From 04a1c03e300c4aa702dc71692a901a54917de658 Mon Sep 17 00:00:00 2001 From: Jeff Layton Date: Wed, 6 Feb 2008 01:36:43 -0800 Subject: [PATCH] --- yaml --- r: 83399 b: refs/heads/master c: ce88cc5ed80de746f5bd2d8242291c87e7b87f63 h: refs/heads/master i: 83397: 9de325ed52661fd9d11f4aafe81986a8974c96f0 83395: 4122cd2d4c7feb3e9b6d34fbe521283b237fb2cf 83391: 12674d51df45eec62dec544202960ce7e79ba72b v: v3 --- [refs] | 2 +- trunk/fs/smbfs/sock.c | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 375d41200919..75df7309a07c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 941e492bdb1239d2ca8f5736cdfd3ff83d00cb90 +refs/heads/master: ce88cc5ed80de746f5bd2d8242291c87e7b87f63 diff --git a/trunk/fs/smbfs/sock.c b/trunk/fs/smbfs/sock.c index e48bd8235a8e..e37fe4deebd0 100644 --- a/trunk/fs/smbfs/sock.c +++ b/trunk/fs/smbfs/sock.c @@ -329,9 +329,8 @@ smb_receive(struct smb_sb_info *server, struct smb_request *req) msg.msg_control = NULL; /* Dont repeat bytes and count available bufferspace */ - rlen = smb_move_iov(&p, &num, iov, req->rq_bytes_recvd); - if (req->rq_rlen < rlen) - rlen = req->rq_rlen; + rlen = min_t(int, smb_move_iov(&p, &num, iov, req->rq_bytes_recvd), + (req->rq_rlen - req->rq_bytes_recvd)); result = kernel_recvmsg(sock, &msg, p, num, rlen, flags);