aboutsummaryrefslogtreecommitdiff
path: root/fs/ksmbd/ksmbd_netlink.h
diff options
context:
space:
mode:
authorGravatar Atte Heikkilä <atteh.mailbox@gmail.com> 2022-08-09 01:02:14 +0300
committerGravatar Steve French <stfrench@microsoft.com> 2022-08-11 01:05:18 -0500
commit4963d74f8a6cc0eafd71d9ffc13e3a11ff1dd160 (patch)
tree732102c08e923a5dc04caa5ec32db3a29739cedc /fs/ksmbd/ksmbd_netlink.h
parentksmbd: return STATUS_BAD_NETWORK_NAME error status if share is not configured (diff)
downloadlinux-4963d74f8a6cc0eafd71d9ffc13e3a11ff1dd160.tar.gz
linux-4963d74f8a6cc0eafd71d9ffc13e3a11ff1dd160.tar.bz2
linux-4963d74f8a6cc0eafd71d9ffc13e3a11ff1dd160.zip
ksmbd: request update to stale share config
ksmbd_share_config_get() retrieves the cached share config as long as there is at least one connection to the share. This is an issue when the user space utilities are used to update share configs. In that case there is a need to inform ksmbd that it should not use the cached share config for a new connection to the share. With these changes the tree connection flag KSMBD_TREE_CONN_FLAG_UPDATE indicates this. When this flag is set, ksmbd removes the share config from the shares hash table meaning that ksmbd_share_config_get() ends up requesting a share config from user space. Signed-off-by: Atte Heikkilä <atteh.mailbox@gmail.com> Acked-by: Namjae Jeon <linkinjeon@kernel.org> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/ksmbd/ksmbd_netlink.h')
-rw-r--r--fs/ksmbd/ksmbd_netlink.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ksmbd/ksmbd_netlink.h b/fs/ksmbd/ksmbd_netlink.h
index 52aa0adeb951..e0cbcfa98c7e 100644
--- a/fs/ksmbd/ksmbd_netlink.h
+++ b/fs/ksmbd/ksmbd_netlink.h
@@ -349,6 +349,7 @@ enum KSMBD_TREE_CONN_STATUS {
#define KSMBD_SHARE_FLAG_STREAMS BIT(11)
#define KSMBD_SHARE_FLAG_FOLLOW_SYMLINKS BIT(12)
#define KSMBD_SHARE_FLAG_ACL_XATTR BIT(13)
+#define KSMBD_SHARE_FLAG_UPDATE BIT(14)
/*
* Tree connect request flags.
@@ -364,6 +365,7 @@ enum KSMBD_TREE_CONN_STATUS {
#define KSMBD_TREE_CONN_FLAG_READ_ONLY BIT(1)
#define KSMBD_TREE_CONN_FLAG_WRITABLE BIT(2)
#define KSMBD_TREE_CONN_FLAG_ADMIN_ACCOUNT BIT(3)
+#define KSMBD_TREE_CONN_FLAG_UPDATE BIT(4)
/*
* RPC over IPC.