Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20120318205342.GA14383@redhat.com>
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.