summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Shilovsky <pshilov@microsoft.com>2019-01-10 11:27:28 -0800
committerSteve French <stfrench@microsoft.com>2019-01-11 07:13:05 -0600
commitee13919c2e8d1f904e035ad4b4239029a8994131 (patch)
treeccdce2b0b4bb2b163a85a7cab039d70a43d40551
parent8544f4aa9dd19a04d1244dae10feecc813ccf175 (diff)
downloadlinux-0-day-ee13919c2e8d1f904e035ad4b4239029a8994131.tar.gz
linux-0-day-ee13919c2e8d1f904e035ad4b4239029a8994131.tar.xz
CIFS: Do not hide EINTR after sending network packets
Currently we hide EINTR code returned from sock_sendmsg() and return 0 instead. This makes a caller think that we successfully completed the network operation which is not true. Fix this by properly returning EINTR to callers. Cc: <stable@vger.kernel.org> Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Steve French <stfrench@microsoft.com>
-rw-r--r--fs/cifs/transport.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/cifs/transport.c b/fs/cifs/transport.c
index e047f06c9b4fb..aaff9c5aab3d0 100644
--- a/fs/cifs/transport.c
+++ b/fs/cifs/transport.c
@@ -387,7 +387,7 @@ smbd_done:
if (rc < 0 && rc != -EINTR)
cifs_dbg(VFS, "Error %d sending data on socket to server\n",
rc);
- else
+ else if (rc > 0)
rc = 0;
return rc;