From mboxrd@z Thu Jan 1 00:00:00 1970 From: Florian Weimer Subject: Re: [PATCH v4] signal: add taskfd_send_signal() syscall Date: Thu, 06 Dec 2018 14:20:21 +0100 Message-ID: <87efau6bca.fsf@oldenburg2.str.redhat.com> References: <20181206121858.12215-1-christian@brauner.io> <87h8fq7s84.fsf@oldenburg2.str.redhat.com> <87pnue6bp2.fsf@oldenburg2.str.redhat.com> <89a6b3a24412d385a816d7d981c60cb1e1bbc0ca.camel@bitron.ch> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT Return-path: In-Reply-To: <89a6b3a24412d385a816d7d981c60cb1e1bbc0ca.camel@bitron.ch> (=?utf-8?Q?=22J=C3=BCrg?= Billeter"'s message of "Thu, 06 Dec 2018 14:18:36 +0100") Sender: linux-kernel-owner@vger.kernel.org To: =?utf-8?Q?J=C3=BCrg?= Billeter Cc: Christian Brauner , linux-kernel@vger.kernel.org, linux-api@vger.kernel.org, luto@kernel.org, arnd@arndb.de, ebiederm@xmission.com, serge@hallyn.com, jannh@google.com, akpm@linux-foundation.org, oleg@redhat.com, cyphar@cyphar.com, viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org, dancol@google.com, timmurray@google.com, linux-man@vger.kernel.org, keescook@chromium.org, tglx@linutronix.de, x86@kernel.org List-Id: linux-man@vger.kernel.org * Jürg Billeter: > On Thu, 2018-12-06 at 14:12 +0100, Florian Weimer wrote: >> * Jürg Billeter: >> >> > On Thu, 2018-12-06 at 13:30 +0100, Florian Weimer wrote: >> > > * Christian Brauner: >> > > >> > > > /* zombies */ >> > > > Zombies can be signaled just as any other process. No special error will be >> > > > reported since a zombie state is an unreliable state (cf. [3]). >> > > >> > > I still disagree with this analysis. If I know that the target process >> > > is still alive, and it is not, this is a persistent error condition >> > > which can be reliably reported. Given that someone might send SIGKILL >> > > to the process behind my back, detecting this error condition could be >> > > useful. >> > >> > As I understand it, kill() behaves the same way. I think it's good that >> > this new syscall keeps the behavior as close as possible to kill(). >> >> No, kill does not behave in this way because the PID can be reused. >> The error condition is not stable there. > > The PID can't be reused as long as it's a zombie. It can only be reused > when it has been wait()ed for. Or am I misunderstanding something? Hmm, that's a fair point. So the original interface is just broken. Florian