diff options
| author | Christian Brauner <brauner@kernel.org> | 2026-06-01 15:56:58 +0200 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2026-06-29 10:54:43 +0200 |
| commit | 272fa19991cd6c40602b0d27d4f07117d25792c0 (patch) | |
| tree | ecc916b89a305d4fe9765e2a873877e63c8b7861 /tools/tracing/rtla/tests/scripts/lib/git@git.tavy.me:linux.git | |
| parent | efdece12540dedb6822990978e8eb033c9aebb73 (diff) | |
fs: stop rewriting paths for PF_EXITING | PF_DUMPCORE
Skip exiting and core-dumping tasks when rewriting fs_struct paths in
chroot_fs_refs(). Such a task is about to release its fs_struct via
exit_fs() anyway, so the worst case is that it lingers on a stale
root/pwd until it does.
This isn't entirely free: a skipped task keeps its reference on the old
root, so after a pivot_root() the old root can't be torn down until the
task is gone. With umount2(MNT_DETACH) that only defers destruction of
the old rootfs; a plain umount() could in principle fail with -EBUSY.
In practice this doesn't matter -- pivot_root(2) is meant to be paired
with MNT_DETACH and isn't issued while other tasks are actively using
the mount namespace -- so the transient pin is harmless.
Link: https://patch.msgid.link/20260601-work-kthread-nullfs-v4-25-77ee053060e0@kernel.org
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools/tracing/rtla/tests/scripts/lib/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions
