* [PATCH 6.6.y 1/3] cifs: Scripted clean up fs/smb/client/fscache.h [not found] <2026091653-repaying-rockslide-b109@gregkh> @ 2026-09-17 14:01 ` Sasha Levin 2026-09-17 14:01 ` [PATCH 6.6.y 2/3] smb: client: use atomic_t for mnt_cifs_flags Sasha Levin 0 siblings, 1 reply; 3+ messages in thread From: Sasha Levin @ 2026-09-17 14:01 UTC (permalink / raw) To: stable Cc: David Howells, Steve French, Paulo Alcantara, Enzo Matsumiya, linux-cifs, linux-fsdevel, linux-kernel, Steve French, Sasha Levin From: David Howells <dhowells@redhat.com> [ Upstream commit bc3de356aae666de5d8b5131545be87cf7754431 ] Remove externs, correct argument names and reformat declarations. Signed-off-by: David Howells <dhowells@redhat.com> cc: Steve French <sfrench@samba.org> cc: Paulo Alcantara <pc@manguebit.org> cc: Enzo Matsumiya <ematsumiya@suse.de> cc: linux-cifs@vger.kernel.org cc: linux-fsdevel@vger.kernel.org cc: linux-kernel@vger.kernel.org Acked-by: Enzo Matsumiya <ematsumiya@suse.de> Signed-off-by: Steve French <stfrench@microsoft.com> Stable-dep-of: cd2b2b57921d ("smb: client: fix WSL reparse point uid/gid override") Signed-off-by: Sasha Levin <sashal@kernel.org> --- fs/smb/client/fscache.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/fs/smb/client/fscache.h b/fs/smb/client/fscache.h index 1f2ea9f5cc9a8..4c2e269a268ed 100644 --- a/fs/smb/client/fscache.h +++ b/fs/smb/client/fscache.h @@ -38,12 +38,12 @@ struct cifs_fscache_inode_coherency_data { /* * fscache.c */ -extern int cifs_fscache_get_super_cookie(struct cifs_tcon *); -extern void cifs_fscache_release_super_cookie(struct cifs_tcon *); +int cifs_fscache_get_super_cookie(struct cifs_tcon *tcon); +void cifs_fscache_release_super_cookie(struct cifs_tcon *tcon); -extern void cifs_fscache_get_inode_cookie(struct inode *inode); -extern void cifs_fscache_release_inode_cookie(struct inode *); -extern void cifs_fscache_unuse_inode_cookie(struct inode *inode, bool update); +void cifs_fscache_get_inode_cookie(struct inode *inode); +void cifs_fscache_release_inode_cookie(struct inode *inode); +void cifs_fscache_unuse_inode_cookie(struct inode *inode, bool update); static inline void cifs_fscache_fill_coherency(struct inode *inode, -- 2.53.0 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 6.6.y 2/3] smb: client: use atomic_t for mnt_cifs_flags 2026-09-17 14:01 ` [PATCH 6.6.y 1/3] cifs: Scripted clean up fs/smb/client/fscache.h Sasha Levin @ 2026-09-17 14:01 ` Sasha Levin 0 siblings, 0 replies; 3+ messages in thread From: Sasha Levin @ 2026-09-17 14:01 UTC (permalink / raw) To: stable Cc: Paulo Alcantara, David Howells, linux-cifs, Steve French, Sasha Levin From: Paulo Alcantara <pc@manguebit.org> [ Upstream commit 4fc3a433c13944ee5766ec5b9bf6f1eb4d29b880 ] Use atomic_t for cifs_sb_info::mnt_cifs_flags as it's currently accessed locklessly and may be changed concurrently in mount/remount and reconnect paths. Signed-off-by: Paulo Alcantara (Red Hat) <pc@manguebit.org> Reviewed-by: David Howells <dhowells@redhat.com> Cc: linux-cifs@vger.kernel.org Signed-off-by: Steve French <stfrench@microsoft.com> [ Stable dependency adaptation for cd2b2b57921d: The 6.6 WSL parser already matches the target's preimage. Keep only the cifs_sb_flags interface needed by that fix and its WSL uid/gid callers. Implement the accessor as a READ_ONCE macro over the existing unsigned mount flags, without adding functions. Drop the atomic_t conversion, generic CIFS_SB accessors and unrelated client-wide refactoring, which depend on newer SMB code absent from this tree. This is preparation for the WSL ownership fix, not a backport of the full flag-writer race fix. ] [ sashal: Reduced backport -- upstream 4fc3a433c1394 touches 27 file(s), this backport carries 2. Not backported here: fs/smb/client/cached_dir.c fs/smb/client/cifsacl.c fs/smb/client/cifsfs.c fs/smb/client/cifs_fs_sb.h fs/smb/client/cifs_ioctl.h fs/smb/client/cifs_unicode.c fs/smb/client/cifs_unicode.h fs/smb/client/connect.c ... and 17 more This note is generated from the file lists only; see the resolution record for the reasoning. ] Stable-dep-of: cd2b2b57921d ("smb: client: fix WSL reparse point uid/gid override") Signed-off-by: Sasha Levin <sashal@kernel.org> --- fs/smb/client/cifsglob.h | 3 +++ fs/smb/client/reparse.h | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/fs/smb/client/cifsglob.h b/fs/smb/client/cifsglob.h index a4e0618c58efc..61ebd6d8eb41e 100644 --- a/fs/smb/client/cifsglob.h +++ b/fs/smb/client/cifsglob.h @@ -1603,6 +1603,9 @@ CIFS_FILE_SB(struct file *file) return CIFS_SB(file_inode(file)->i_sb); } +/* Read mount flags once for paths that need a consistent snapshot. */ +#define cifs_sb_flags(cifs_sb) READ_ONCE((cifs_sb)->mnt_cifs_flags) + static inline char CIFS_DIR_SEP(const struct cifs_sb_info *cifs_sb) { if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_POSIX_PATHS) diff --git a/fs/smb/client/reparse.h b/fs/smb/client/reparse.h index ff05b0e75c928..c15e4541cca06 100644 --- a/fs/smb/client/reparse.h +++ b/fs/smb/client/reparse.h @@ -32,7 +32,7 @@ static inline kuid_t wsl_make_kuid(struct cifs_sb_info *cifs_sb, { u32 uid = le32_to_cpu(*(__le32 *)ptr); - if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_UID) + if (cifs_sb_flags(cifs_sb) & CIFS_MOUNT_OVERR_UID) return cifs_sb->ctx->linux_uid; return make_kuid(current_user_ns(), uid); } @@ -42,7 +42,7 @@ static inline kgid_t wsl_make_kgid(struct cifs_sb_info *cifs_sb, { u32 gid = le32_to_cpu(*(__le32 *)ptr); - if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_GID) + if (cifs_sb_flags(cifs_sb) & CIFS_MOUNT_OVERR_GID) return cifs_sb->ctx->linux_gid; return make_kgid(current_user_ns(), gid); } -- 2.53.0 ^ permalink raw reply related [flat|nested] 3+ messages in thread
[parent not found: <2026091634-finch-unglazed-c530@gregkh>]
* [PATCH 6.6.y 1/3] cifs: Scripted clean up fs/smb/client/fscache.h [not found] <2026091634-finch-unglazed-c530@gregkh> @ 2026-09-17 14:02 ` Sasha Levin 0 siblings, 0 replies; 3+ messages in thread From: Sasha Levin @ 2026-09-17 14:02 UTC (permalink / raw) To: stable Cc: David Howells, Steve French, Paulo Alcantara, Enzo Matsumiya, linux-cifs, linux-fsdevel, linux-kernel, Steve French, Sasha Levin From: David Howells <dhowells@redhat.com> [ Upstream commit bc3de356aae666de5d8b5131545be87cf7754431 ] Remove externs, correct argument names and reformat declarations. Signed-off-by: David Howells <dhowells@redhat.com> cc: Steve French <sfrench@samba.org> cc: Paulo Alcantara <pc@manguebit.org> cc: Enzo Matsumiya <ematsumiya@suse.de> cc: linux-cifs@vger.kernel.org cc: linux-fsdevel@vger.kernel.org cc: linux-kernel@vger.kernel.org Acked-by: Enzo Matsumiya <ematsumiya@suse.de> Signed-off-by: Steve French <stfrench@microsoft.com> Stable-dep-of: cf4d35896621 ("smb: client: fix uid/gid override in getattr with posix extensions") Signed-off-by: Sasha Levin <sashal@kernel.org> --- fs/smb/client/fscache.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/fs/smb/client/fscache.h b/fs/smb/client/fscache.h index 1f2ea9f5cc9a8..4c2e269a268ed 100644 --- a/fs/smb/client/fscache.h +++ b/fs/smb/client/fscache.h @@ -38,12 +38,12 @@ struct cifs_fscache_inode_coherency_data { /* * fscache.c */ -extern int cifs_fscache_get_super_cookie(struct cifs_tcon *); -extern void cifs_fscache_release_super_cookie(struct cifs_tcon *); +int cifs_fscache_get_super_cookie(struct cifs_tcon *tcon); +void cifs_fscache_release_super_cookie(struct cifs_tcon *tcon); -extern void cifs_fscache_get_inode_cookie(struct inode *inode); -extern void cifs_fscache_release_inode_cookie(struct inode *); -extern void cifs_fscache_unuse_inode_cookie(struct inode *inode, bool update); +void cifs_fscache_get_inode_cookie(struct inode *inode); +void cifs_fscache_release_inode_cookie(struct inode *inode); +void cifs_fscache_unuse_inode_cookie(struct inode *inode, bool update); static inline void cifs_fscache_fill_coherency(struct inode *inode, -- 2.53.0 ^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-09-17 14:02 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <2026091653-repaying-rockslide-b109@gregkh>
2026-09-17 14:01 ` [PATCH 6.6.y 1/3] cifs: Scripted clean up fs/smb/client/fscache.h Sasha Levin
2026-09-17 14:01 ` [PATCH 6.6.y 2/3] smb: client: use atomic_t for mnt_cifs_flags Sasha Levin
[not found] <2026091634-finch-unglazed-c530@gregkh>
2026-09-17 14:02 ` [PATCH 6.6.y 1/3] cifs: Scripted clean up fs/smb/client/fscache.h Sasha Levin
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox