summaryrefslogtreecommitdiff
path: root/include/linux/fs_struct.h
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2025-10-07 21:53:13 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2025-10-07 21:53:13 -0700
commit8b87f67b4c87452e21721887fa8dec1f4c6b2b7c (patch)
tree2c163f512e5d7f8400b42a7a8439e2b06492a870 /include/linux/fs_struct.h
parent30989f67650cbf8dc763f7c22e3a210f70a8d7d0 (diff)
parentc7866ee0a9ddd9789faadf58cdac6abd7aabf045 (diff)
Merge branch 'next' into for-linus
Prepare input updates for 6.18 merge window.
Diffstat (limited to 'include/linux/fs_struct.h')
-rw-r--r--include/linux/fs_struct.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/include/linux/fs_struct.h b/include/linux/fs_struct.h
index 783b48dedb72..baf200ab5c77 100644
--- a/include/linux/fs_struct.h
+++ b/include/linux/fs_struct.h
@@ -8,8 +8,7 @@
struct fs_struct {
int users;
- spinlock_t lock;
- seqcount_spinlock_t seq;
+ seqlock_t seq;
int umask;
int in_exec;
struct path root, pwd;
@@ -26,18 +25,18 @@ extern int unshare_fs_struct(void);
static inline void get_fs_root(struct fs_struct *fs, struct path *root)
{
- spin_lock(&fs->lock);
+ read_seqlock_excl(&fs->seq);
*root = fs->root;
path_get(root);
- spin_unlock(&fs->lock);
+ read_sequnlock_excl(&fs->seq);
}
static inline void get_fs_pwd(struct fs_struct *fs, struct path *pwd)
{
- spin_lock(&fs->lock);
+ read_seqlock_excl(&fs->seq);
*pwd = fs->pwd;
path_get(pwd);
- spin_unlock(&fs->lock);
+ read_sequnlock_excl(&fs->seq);
}
extern bool current_chrooted(void);