summaryrefslogtreecommitdiff
path: root/fs/smb/server/ksmbd_work.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/smb/server/ksmbd_work.c')
-rw-r--r--fs/smb/server/ksmbd_work.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/fs/smb/server/ksmbd_work.c b/fs/smb/server/ksmbd_work.c
index f49c2e01ea9f..51def3ca74c0 100644
--- a/fs/smb/server/ksmbd_work.c
+++ b/fs/smb/server/ksmbd_work.c
@@ -160,9 +160,11 @@ int ksmbd_iov_pin_rsp_read(struct ksmbd_work *work, void *ib, int len,
return __ksmbd_iov_pin_rsp(work, ib, len, aux_buf, aux_size);
}
-void ksmbd_iov_reset(struct ksmbd_work *work)
+int allocate_interim_rsp_buf(struct ksmbd_work *work)
{
- work->iov_idx = 0;
- work->iov_cnt = 0;
- *(__be32 *)work->iov[0].iov_base = 0;
+ work->response_buf = kzalloc(MAX_CIFS_SMALL_BUFFER_SIZE, GFP_KERNEL);
+ if (!work->response_buf)
+ return -ENOMEM;
+ work->response_sz = MAX_CIFS_SMALL_BUFFER_SIZE;
+ return 0;
}