]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
pid: make __task_pid_nr_ns(ns => NULL) safe for zombie callers
authorOleg Nesterov <oleg@redhat.com>
Sun, 10 Aug 2025 17:36:04 +0000 (19:36 +0200)
committerChristian Brauner <brauner@kernel.org>
Tue, 19 Aug 2025 11:38:20 +0000 (13:38 +0200)
commitabdfd4948e45c51b19162cf8b3f5003f8f53c9b9
tree5a584288a4f3174ffb7a1427c61a164b79225962
parent006568ab4c5ca2309ceb36fa553e390b4aa9c0c7
pid: make __task_pid_nr_ns(ns => NULL) safe for zombie callers

task_pid_vnr(another_task) will crash if the caller was already reaped.
The pid_alive(current) check can't really help, the parent/debugger can
call release_task() right after this check.

This also means that even task_ppid_nr_ns(current, NULL) is not safe,
pid_alive() only ensures that it is safe to dereference ->real_parent.

Change __task_pid_nr_ns() to ensure ns != NULL.

Originally-by: 高翔 <gaoxiang17@xiaomi.com>
Link: https://lore.kernel.org/all/20250802022123.3536934-1-gxxa03070307@gmail.com/
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Link: https://lore.kernel.org/20250810173604.GA19991@redhat.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
kernel/pid.c