Document /proc/pid PID reuse behavior
authorDaniel Colascione <dancol@google.com>
Mon, 5 Nov 2018 13:22:05 +0000 (13:22 +0000)
committerJonathan Corbet <corbet@lwn.net>
Tue, 20 Nov 2018 16:50:00 +0000 (09:50 -0700)
State explicitly that holding a /proc/pid file descriptor open does
not reserve the PID. Also note that in the event of PID reuse, these
open file descriptors refer to the old, now-dead process, and not the
new one that happens to be named the same numeric PID.

Signed-off-by: Daniel Colascione <dancol@google.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Reviewed-by: Mike Rapoport <rppt@linux.ibm.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Documentation/filesystems/proc.txt

index a078efad99574c99a80eafa5ca7a9b2662303c5c..af88fa238786438a3983f1c5e97b2d6f4634f7b3 100644 (file)
@@ -125,6 +125,13 @@ process running on the system, which is named after the process ID (PID).
 The link  self  points  to  the  process reading the file system. Each process
 subdirectory has the entries listed in Table 1-1.
 
+Note that an open a file descriptor to /proc/<pid> or to any of its
+contained files or subdirectories does not prevent <pid> being reused
+for some other process in the event that <pid> exits. Operations on
+open /proc/<pid> file descriptors corresponding to dead processes
+never act on any new process that the kernel may, through chance, have
+also assigned the process ID <pid>. Instead, operations on these FDs
+usually fail with ESRCH.
 
 Table 1-1: Process specific entries in /proc
 ..............................................................................