| From a85ceafd41927e41a4103d228a993df7edd8823b Mon Sep 17 00:00:00 2001 |
| From: Paulo Alcantara <pc@cjr.nz> |
| Date: Fri, 16 Dec 2022 22:03:41 -0300 |
| Subject: cifs: fix confusing debug message |
| |
| From: Paulo Alcantara <pc@cjr.nz> |
| |
| commit a85ceafd41927e41a4103d228a993df7edd8823b upstream. |
| |
| Since rc was initialised to -ENOMEM in cifs_get_smb_ses(), when an |
| existing smb session was found, free_xid() would be called and then |
| print |
| |
| CIFS: fs/cifs/connect.c: Existing tcp session with server found |
| CIFS: fs/cifs/connect.c: VFS: in cifs_get_smb_ses as Xid: 44 with uid: 0 |
| CIFS: fs/cifs/connect.c: Existing smb sess found (status=1) |
| CIFS: fs/cifs/connect.c: VFS: leaving cifs_get_smb_ses (xid = 44) rc = -12 |
| |
| Fix this by initialising rc to 0 and then let free_xid() print this |
| instead |
| |
| CIFS: fs/cifs/connect.c: Existing tcp session with server found |
| CIFS: fs/cifs/connect.c: VFS: in cifs_get_smb_ses as Xid: 14 with uid: 0 |
| CIFS: fs/cifs/connect.c: Existing smb sess found (status=1) |
| CIFS: fs/cifs/connect.c: VFS: leaving cifs_get_smb_ses (xid = 14) rc = 0 |
| |
| Signed-off-by: Paulo Alcantara (SUSE) <pc@cjr.nz> |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Steve French <stfrench@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| fs/cifs/connect.c | 4 +++- |
| 1 file changed, 3 insertions(+), 1 deletion(-) |
| |
| --- a/fs/cifs/connect.c |
| +++ b/fs/cifs/connect.c |
| @@ -2155,7 +2155,7 @@ cifs_set_cifscreds(struct smb3_fs_contex |
| struct cifs_ses * |
| cifs_get_smb_ses(struct TCP_Server_Info *server, struct smb3_fs_context *ctx) |
| { |
| - int rc = -ENOMEM; |
| + int rc = 0; |
| unsigned int xid; |
| struct cifs_ses *ses; |
| struct sockaddr_in *addr = (struct sockaddr_in *)&server->dstaddr; |
| @@ -2204,6 +2204,8 @@ cifs_get_smb_ses(struct TCP_Server_Info |
| return ses; |
| } |
| |
| + rc = -ENOMEM; |
| + |
| cifs_dbg(FYI, "Existing smb sess not found\n"); |
| ses = sesInfoAlloc(); |
| if (ses == NULL) |