diff options
author | Christian Brauner <brauner@kernel.org> | 2025-04-11 15:22:45 +0200 |
---|---|---|
committer | Christian Brauner <brauner@kernel.org> | 2025-04-12 14:04:53 +0200 |
commit | 17f1b08acf50c0bfb02e21623e53e7e575612b67 (patch) | |
tree | c038848db5e8c37bcc784fb5602c370c7c560099 /net/unix/af_unix.c | |
parent | 35c9701ea717dc548f1fab5bfa286be98c1bade8 (diff) |
pidfs: ensure consistent ENOENT/ESRCH reporting
In a prior patch series we tried to cleanly differentiate between:
(1) The task has already been reaped.
(2) The caller requested a pidfd for a thread-group leader but the pid
actually references a struct pid that isn't used as a thread-group
leader.
as this was causing issues for non-threaded workloads.
But there's cases where the current simple logic is wrong. Specifically,
if the pid was a leader pid and the check races with __unhash_process().
Stabilize this by using the pidfd waitqueue lock.
Link: https://lore.kernel.org/20250411-work-pidfs-enoent-v2-2-60b2d3bb545f@kernel.org
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions