Date: Sun, 18 Mar 2012 21:53:42 +0100 From: Oleg Nesterov <oleg@...hat.com> To: Linus Torvalds <torvalds@...ux-foundation.org> Cc: Andrew Morton <akpm@...ux-foundation.org>, Djalal Harouni <tixxdz@...ndz.org>, Alan Cox <alan@...rguk.ukuu.org.uk>, linux-kernel@...r.kernel.org, kernel-hardening@...ts.openwall.com, Al Viro <viro@...iv.linux.org.uk>, Alexey Dobriyan <adobriyan@...il.com>, "Eric W. Biederman" <ebiederm@...ssion.com>, Vasiliy Kulikov <segoon@...nwall.com>, Kees Cook <keescook@...omium.org>, Solar Designer <solar@...nwall.com>, WANG Cong <xiyou.wangcong@...il.com>, James Morris <james.l.morris@...cle.com>, linux-security-module@...r.kernel.org, linux-fsdevel@...r.kernel.org, Greg KH <gregkh@...uxfoundation.org>, Ingo Molnar <mingo@...e.hu>, Stephen Wilson <wilsons@...rt.ca>, "Jason A. Donenfeld" <Jason@...c4.com>, Roland McGrath <roland@...k.frob.com> Subject: Re: [PATCH 1/1] CLONE_PARENT shouldn't allow to set ->exit_signal On 03/18, Linus Torvalds wrote: > > On Wed, Mar 14, 2012 at 11:55 AM, Oleg Nesterov <oleg@...hat.com> wrote: > > + if (clone_flags & CLONE_THREAD) > > + p->exit_signal = -1; > > + else if (clone_flags & CLONE_PARENT) > > + p->exit_signal = current->group_leader->exit_signal; > > + else > > + p->exit_signal = (clone_flags & CSIGNAL); > > So why is it "current->group_leader->exit_signal" rather than the much > more logical (imho) and simpler "current->exit_signal"? This would be wrong if current is not the main thread. In this case current->exit_signal = -1. Only group_leader has the "real" exit_signal used for notification. Historically "exit_signal = -1" meant different things, currently it only means "I am not the leader", see thread_group_leader(). I'll write another email tomorrow. Yes, I do remember I promised the security fixes in this area, sorry for delay. Oleg.
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.