diff options
author | Paulo Alcantara <pc@manguebit.com> | 2023-11-25 23:55:05 -0300 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2024-01-07 15:46:05 -0600 |
commit | 67ec9949b0dfe78c99e110dd975eb7dc5645630c (patch) | |
tree | 5953ae20533a50ad3990bdcea0a7f6fd79b7208b /fs/smb/client/cifsglob.h | |
parent | 102466f303ffcd5cff207b3c122557f73f1041e6 (diff) | |
download | linux-stable-67ec9949b0dfe78c99e110dd975eb7dc5645630c.tar.gz linux-stable-67ec9949b0dfe78c99e110dd975eb7dc5645630c.tar.bz2 linux-stable-67ec9949b0dfe78c99e110dd975eb7dc5645630c.zip |
smb: client: optimise reparse point querying
Reduce number of roundtrips to server when querying reparse points in
->query_path_info() by sending a single compound request of
create+get_reparse+get_info+close.
Signed-off-by: Paulo Alcantara (SUSE) <pc@manguebit.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/smb/client/cifsglob.h')
-rw-r--r-- | fs/smb/client/cifsglob.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/smb/client/cifsglob.h b/fs/smb/client/cifsglob.h index fd9aba5f4fda..541e8b88b4c1 100644 --- a/fs/smb/client/cifsglob.h +++ b/fs/smb/client/cifsglob.h @@ -192,6 +192,11 @@ struct cifs_open_info_data { bool symlink; }; struct { + /* ioctl response buffer */ + struct { + int buftype; + struct kvec iov; + } io; __u32 tag; union { struct reparse_data_buffer *buf; @@ -209,11 +214,6 @@ struct cifs_open_info_data { ((d)->reparse_point || \ (le32_to_cpu((d)->fi.Attributes) & ATTR_REPARSE)) -static inline void cifs_free_open_info(struct cifs_open_info_data *data) -{ - kfree(data->symlink_target); -} - /* ***************************************************************** * Except the CIFS PDUs themselves all the |