| Subject: signal-fix-up-rcu-wreckage.patch |
| From: Thomas Gleixner <tglx@linutronix.de> |
| Date: Fri, 22 Jul 2011 08:07:08 +0200 |
| |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| --- |
| kernel/signal.c | 6 +++--- |
| 1 file changed, 3 insertions(+), 3 deletions(-) |
| |
| --- a/kernel/signal.c |
| +++ b/kernel/signal.c |
| @@ -1391,12 +1391,12 @@ struct sighand_struct *__lock_task_sigha |
| 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; |
| } |
| |
| @@ -1407,7 +1407,7 @@ struct sighand_struct *__lock_task_sigha |
| } |
| spin_unlock(&sighand->siglock); |
| rcu_read_unlock(); |
| - local_irq_restore(*flags); |
| + local_irq_restore_nort(*flags); |
| } |
| |
| return sighand; |