summaryrefslogtreecommitdiff
path: root/kernel/signal.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-07-22 08:07:08 +0200
committerClark Williams <williams@redhat.com>2011-12-28 16:25:29 -0600
commit4ca1371431e5d98d18398d34bcfa50533761ce22 (patch)
treefadc599848ff46bbf0d7a1b0efc24fa5d476fa84 /kernel/signal.c
parent11e2deeaea3f5c74d2b8beb12e72c10aad5283b3 (diff)
signal-fix-up-rcu-wreckage.patch
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/signal.c')
-rw-r--r--kernel/signal.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/signal.c b/kernel/signal.c
index e1958f23646e..d9cc78c9a53b 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -1329,12 +1329,12 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
struct sighand_struct *sighand;
for (;;) {
- local_irq_save(*flags);
+ local_irq_save_nort(*flags);
rcu_read_lock();
sighand = rcu_dereference(tsk->sighand);
if (unlikely(sighand == NULL)) {
rcu_read_unlock();
- local_irq_restore(*flags);
+ local_irq_restore_nort(*flags);
break;
}
@@ -1345,7 +1345,7 @@ struct sighand_struct *__lock_task_sighand(struct task_struct *tsk,
}
spin_unlock(&sighand->siglock);
rcu_read_unlock();
- local_irq_restore(*flags);
+ local_irq_restore_nort(*flags);
}
return sighand;