signal: Explain local_irq_save() call
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Mon, 5 May 2014 15:18:30 +0000 (08:18 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 9 Jul 2014 16:14:33 +0000 (09:14 -0700)
commitc41247e1d4864c863ee25e029dd53acdb2abc000
tree86011181ada393aadad02a79085678bda508d2cc
parentab74fdfd4e11ec040f21cf87edc14fc9f62cc934
signal: Explain local_irq_save() call

The explicit local_irq_save() in __lock_task_sighand() is needed to avoid
a potential deadlock condition, as noted in a841796f11c90d53 (signal:
align __lock_task_sighand() irq disabling and RCU).  However, someone
reading the code might be forgiven for concluding that this separate
local_irq_save() was completely unnecessary.  This commit therefore adds
a comment referencing the shiny new block comment on rcu_read_unlock().

Reported-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Lai Jiangshan <laijs@cn.fujitsu.com>
kernel/signal.c