aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/cifssmb.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/cifs/cifssmb.c')
-rw-r--r--fs/cifs/cifssmb.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c
index 38ab9f67c5f4..9d7bbd225eff 100644
--- a/fs/cifs/cifssmb.c
+++ b/fs/cifs/cifssmb.c
@@ -1076,13 +1076,14 @@ CIFSSMBRead(const int xid, struct cifsTconInfo *tcon,
1076 cifs_small_buf_release(iov[0].iov_base); 1076 cifs_small_buf_release(iov[0].iov_base);
1077 else if(resp_buf_type == CIFS_LARGE_BUFFER) 1077 else if(resp_buf_type == CIFS_LARGE_BUFFER)
1078 cifs_buf_release(iov[0].iov_base); 1078 cifs_buf_release(iov[0].iov_base);
1079 } else /* return buffer to caller to free */ /* BB FIXME how do we tell caller if it is not a large buffer */ { 1079 } else if(resp_buf_type != CIFS_NO_BUFFER) {
1080 *buf = iov[0].iov_base; 1080 /* return buffer to caller to free */
1081 *buf = iov[0].iov_base;
1081 if(resp_buf_type == CIFS_SMALL_BUFFER) 1082 if(resp_buf_type == CIFS_SMALL_BUFFER)
1082 *pbuf_type = CIFS_SMALL_BUFFER; 1083 *pbuf_type = CIFS_SMALL_BUFFER;
1083 else if(resp_buf_type == CIFS_LARGE_BUFFER) 1084 else if(resp_buf_type == CIFS_LARGE_BUFFER)
1084 *pbuf_type = CIFS_LARGE_BUFFER; 1085 *pbuf_type = CIFS_LARGE_BUFFER;
1085 } 1086 } /* else no valid buffer on return - leave as null */
1086 1087
1087 /* Note: On -EAGAIN error only caller can retry on handle based calls 1088 /* Note: On -EAGAIN error only caller can retry on handle based calls
1088 since file handle passed in no longer valid */ 1089 since file handle passed in no longer valid */