diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2025-08-20 19:54:45 -0400 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2025-09-02 19:35:56 -0400 |
| commit | d154f185758994ea2cc2c15575a3653334562184 (patch) | |
| tree | 56fdc3997c90cc4fad1a29f770b99f6fd38543ef | |
| parent | 360600f8ec635c3d47789ade3d3c120c88981343 (diff) | |
introduced guards for mount_lock
mount_writer: write_seqlock; that's an equivalent of {un,}lock_mount_hash()
mount_locked_reader: read_seqlock_excl; these tend to be open-coded.
No bulk conversions, please - if nothing else, quite a few places take
use mount_writer form when mount_locked_reader is sufficent. It needs
to be dealt with carefully.
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| -rw-r--r-- | fs/mount.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/mount.h b/fs/mount.h index 97737051a8b9..ed8c83ba836a 100644 --- a/fs/mount.h +++ b/fs/mount.h @@ -154,6 +154,11 @@ static inline void get_mnt_ns(struct mnt_namespace *ns) extern seqlock_t mount_lock; +DEFINE_LOCK_GUARD_0(mount_writer, write_seqlock(&mount_lock), + write_sequnlock(&mount_lock)) +DEFINE_LOCK_GUARD_0(mount_locked_reader, read_seqlock_excl(&mount_lock), + read_sequnlock_excl(&mount_lock)) + struct proc_mounts { struct mnt_namespace *ns; struct path root; |