diff options
author | Christian Brauner <brauner@kernel.org> | 2024-12-13 22:31:52 +0300 |
---|---|---|
committer | Christian Brauner <brauner@kernel.org> | 2025-01-09 18:58:53 +0300 |
commit | c7bb042031b4890b1c5e733dd1ef6484565d174a (patch) | |
tree | 28806e5e531c92cc8cdc80ff4ef8bff537c68bb9 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | bd32073632008979e39ab063acc252a5ce49efe9 (diff) | |
parent | 75d0dd101fbf0173f046bf55a8d583aa8d6a1ce5 (diff) | |
download | linux-c7bb042031b4890b1c5e733dd1ef6484565d174a.tar.xz |
Merge patch series "fs: lockless mntns lookup"
Christian Brauner <brauner@kernel.org> says:
Currently we take the read lock when looking for a mount namespace to
list mounts in. We can make this lockless. The simple search case can
just use a sequence counter to detect concurrent changes to the rbtree.
For walking the list of mount namespaces sequentially via nsfs we keep a
separate rcu list as rb_prev() and rb_next() aren't usable safely with
rcu.
Since creating mount namespaces is a relatively rare event compared with
querying mounts in a foreign mount namespace this is worth it. Once
libmount and systemd pick up this mechanism to list mounts in foreign
mount namespaces this will be used very frequently.
* patches from https://lore.kernel.org/r/20241213-work-mount-rbtree-lockless-v3-0-6e3cdaf9b280@kernel.org:
samples: add test-list-all-mounts
selftests: remove unneeded include
selftests: add tests for mntns iteration
seltests: move nsfs into filesystems subfolder
fs: simplify rwlock to spinlock
fs: lockless mntns lookup for nsfs
rculist: add list_bidir_{del,prev}_rcu()
fs: lockless mntns rbtree lookup
fs: add mount namespace to rbtree late
mount: remove inlude/nospec.h include
Link: https://lore.kernel.org/r/20241213-work-mount-rbtree-lockless-v3-0-6e3cdaf9b280@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions