After patch 10f39bb1, "special & RCU_READ_UNLOCK_BLOCKED" can't be true in irq nor softirq.(due to RCU_READ_UNLOCK_BLOCKED can only be set when preemption)
Signed-off-by: Lai Jiangshan <la...@cn.fujitsu.com> --- kernel/rcutree_plugin.h | 6 ------ 1 files changed, 0 insertions(+), 6 deletions(-) diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h index 8fd947e..54f7e45 100644 --- a/kernel/rcutree_plugin.h +++ b/kernel/rcutree_plugin.h @@ -361,12 +361,6 @@ void rcu_read_unlock_special(struct task_struct *t) rcu_preempt_qs(smp_processor_id()); } - /* Hardware IRQ handlers cannot block. */ - if (in_irq() || in_serving_softirq()) { - local_irq_restore(flags); - return; - } - /* Clean up if blocked during RCU read-side critical section. */ if (special & RCU_READ_UNLOCK_BLOCKED) { t->rcu_read_unlock_special &= ~RCU_READ_UNLOCK_BLOCKED; -- 1.7.4.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/