From c3c6373abb44e376b654ef91190599d26a0124fd Mon Sep 17 00:00:00 2001 From: Oleg Nesterov Date: Wed, 29 Apr 2009 16:02:24 +0200 Subject: [PATCH] --- yaml --- r: 146416 b: refs/heads/master c: ecd6de3c88e8cbcad175b2eab48ba05c2014f7b6 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/security/selinux/hooks.c | 11 +++-------- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index bf97fdf57e2e..fef822eb16c8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3bcac0263f0b45e67a64034ebcb69eb9abb742f4 +refs/heads/master: ecd6de3c88e8cbcad175b2eab48ba05c2014f7b6 diff --git a/trunk/security/selinux/hooks.c b/trunk/security/selinux/hooks.c index 5a345115036c..39046ddd90a9 100644 --- a/trunk/security/selinux/hooks.c +++ b/trunk/security/selinux/hooks.c @@ -2371,10 +2371,8 @@ static void selinux_bprm_committed_creds(struct linux_binprm *bprm) { const struct task_security_struct *tsec = current_security(); struct itimerval itimer; - struct sighand_struct *psig; u32 osid, sid; int rc, i; - unsigned long flags; osid = tsec->osid; sid = tsec->sid; @@ -2405,12 +2403,9 @@ static void selinux_bprm_committed_creds(struct linux_binprm *bprm) /* Wake up the parent if it is waiting so that it can recheck * wait permission to the new task SID. */ - read_lock_irq(&tasklist_lock); - psig = current->parent->sighand; - spin_lock_irqsave(&psig->siglock, flags); - wake_up_interruptible(¤t->parent->signal->wait_chldexit); - spin_unlock_irqrestore(&psig->siglock, flags); - read_unlock_irq(&tasklist_lock); + read_lock(&tasklist_lock); + wake_up_interruptible(¤t->real_parent->signal->wait_chldexit); + read_unlock(&tasklist_lock); } /* superblock security operations */