]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
smb/server: fix return value of smb2_oplock_break()
authorChenXiaoSong <chenxiaosong@kylinos.cn>
Fri, 17 Oct 2025 10:46:11 +0000 (18:46 +0800)
committerSteve French <stfrench@microsoft.com>
Mon, 1 Dec 2025 03:11:43 +0000 (21:11 -0600)
smb2_oplock_break() should return error code when an error occurs,
__process_request() will print the error messages.

Signed-off-by: ChenXiaoSong <chenxiaosong@kylinos.cn>
Acked-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/server/smb2pdu.c

index 2e6f3d96d3e6573f5ea1b0bfc3769c8b6ebb1b7d..98d7f7259fe3d0ab393db1a1c743233051ab10c1 100644 (file)
@@ -8748,7 +8748,7 @@ err_out:
  * smb2_oplock_break() - dispatcher for smb2.0 and 2.1 oplock/lease break
  * @work:      smb work containing oplock/lease break command buffer
  *
- * Return:     0
+ * Return:     0 on success, otherwise error
  */
 int smb2_oplock_break(struct ksmbd_work *work)
 {
@@ -8771,6 +8771,7 @@ int smb2_oplock_break(struct ksmbd_work *work)
                            le16_to_cpu(req->StructureSize));
                rsp->hdr.Status = STATUS_INVALID_PARAMETER;
                smb2_set_err_rsp(work);
+               return -EINVAL;
        }
 
        return 0;