Re: [PATCH] selinux_bprm_committed_creds: use __wake_up_parent()

From: Andrew Morton
Date: Fri Jul 03 2009 - 12:12:00 EST


On Fri, 3 Jul 2009 11:23:11 +0200 Oleg Nesterov <oleg@xxxxxxxxxx> wrote:

> (depends on ptrace-__ptrace_detach-do-__wake_up_parent-if-we-reap-the-tracee.patch
> which exports __wake_up_parent)
>
> Spotted by Valdis.Kletnieks@xxxxxxx
>
> selinux_bprm_committed_creds() should not play with ->wait_chldexit, now
> that __wake_up_parent() is exported change the code to use this helper.

That's a bit vague. Why shouldn't it play with wait_chldexit? What
changed to make that wrong?

Is this a -mm fix? If so, which -mm patch introduced the problem?

If not, how come the crash isn't being reported in mainline?

Confused.

> Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
>
> --- WAIT/security/selinux/hooks.c~SEL_WAKE_PARENT 2009-06-16 17:01:42.000000000 +0200
> +++ WAIT/security/selinux/hooks.c 2009-07-03 11:15:08.000000000 +0200
> @@ -2404,7 +2404,7 @@ static void selinux_bprm_committed_creds
> /* Wake up the parent if it is waiting so that it can recheck
> * wait permission to the new task SID. */
> read_lock(&tasklist_lock);
> - wake_up_interruptible(&current->real_parent->signal->wait_chldexit);
> + __wake_up_parent(current, current->real_parent);
> read_unlock(&tasklist_lock);
> }
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/