summaryrefslogtreecommitdiffstats
path: root/fs/cifs/smb2pdu.h
diff options
context:
space:
mode:
authorPavel Shilovsky2016-11-24 00:31:54 +0100
committerSteve French2017-02-01 23:46:35 +0100
commitb8f57ee8aad414a3122bff72d7968a94baacb9b6 (patch)
tree74d72b22c569ef6054e26e98b79d96f1f781592f /fs/cifs/smb2pdu.h
parentCIFS: Separate SMB2 sync header processing (diff)
downloadkernel-qcow2-linux-b8f57ee8aad414a3122bff72d7968a94baacb9b6.tar.gz
kernel-qcow2-linux-b8f57ee8aad414a3122bff72d7968a94baacb9b6.tar.xz
kernel-qcow2-linux-b8f57ee8aad414a3122bff72d7968a94baacb9b6.zip
CIFS: Separate RFC1001 length processing for SMB2 read
Allocate and initialize SMB2 read request without RFC1001 length field to directly call cifs_send_recv() rather than SendReceive2() in a read codepath. Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com>
Diffstat (limited to 'fs/cifs/smb2pdu.h')
-rw-r--r--fs/cifs/smb2pdu.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/cifs/smb2pdu.h b/fs/cifs/smb2pdu.h
index 052342da4844..35ff9fae1c27 100644
--- a/fs/cifs/smb2pdu.h
+++ b/fs/cifs/smb2pdu.h
@@ -823,8 +823,9 @@ struct smb2_flush_rsp {
#define SMB2_CHANNEL_RDMA_V1 0x00000001 /* SMB3 or later */
#define SMB2_CHANNEL_RDMA_V1_INVALIDATE 0x00000001 /* SMB3.02 or later */
-struct smb2_read_req {
- struct smb2_hdr hdr;
+/* SMB2 read request without RFC1001 length at the beginning */
+struct smb2_read_plain_req {
+ struct smb2_sync_hdr sync_hdr;
__le16 StructureSize; /* Must be 49 */
__u8 Padding; /* offset from start of SMB2 header to place read */
__u8 Flags; /* MBZ unless SMB3.02 or later */