[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87d0rbks7x.fsf@xmission.com>
Date: Sun, 11 Nov 2018 19:19:30 -0600
From: ebiederm@...ssion.com (Eric W. Biederman)
To: David Laight <David.Laight@...LAB.COM>
Cc: 'Daniel Colascione' <dancol@...gle.com>,
Tycho Andersen <tycho@...ho.ws>,
linux-kernel <linux-kernel@...r.kernel.org>,
Tim Murray <timmurray@...gle.com>,
Joel Fernandes <joelaf@...gle.com>,
"Suren Baghdasaryan" <surenb@...gle.com>,
Aleksa Sarai <cyphar@...har.com>,
"Christian Brauner" <christian.brauner@...onical.com>,
Kees Cook <keescook@...omium.org>,
Oleg Nesterov <oleg@...hat.com>
Subject: Re: [PATCH v3] Implement /proc/pid/kill
David Laight <David.Laight@...LAB.COM> writes:
> From: Daniel Colascione
>> Sent: 31 October 2018 19:33
> ...
>> You can't do it today with kill. The idea that keeping a open file
>> descriptor to a /proc/pid or a file within it prevents PID reuse is
>> widespread, but incorrect.
>
> Is there a real good reason why that shouldn't be the case?
> ie Holding a reference on the 'struct pid' being enough to stop reuse.
>
> A patch to do that would be more generally useful.
Holding an open file descriptor to /proc/pid is enough to prevent pid
reuse problems. If a pid number is reused a new 'struct pid' is
generated. There is not 'struct pid' reuse.
So in solving this the kernel data structure you would need to hold onto
is a 'struct pid'. It is just necessary to add an interface to sending
signals to that 'struct pid' and not looking up the 'struct pid' again
by number.
Eric
Powered by blists - more mailing lists