[PATCH 0/8] rcu: Ensure rcu read site is deadlock-immunity

From: Lai Jiangshan
Date: Wed Aug 07 2013 - 06:21:06 EST


Although all articles declare that rcu read site is deadlock-immunity.
It is not true for rcu-preempt, it will be deadlock if rcu read site
overlaps with scheduler lock.

ec433f0c, 10f39bb1 and 016a8d5b just partially solve it. But rcu read site
is still not deadlock-immunity. And the problem described in 016a8d5b
is still existed(rcu_read_unlock_special() calls wake_up).

The problem is fixed in patch5.

Lai Jiangshan (8):
rcu: add a warn to rcu_preempt_note_context_switch()
rcu: rcu_read_unlock_special() can be nested in irq/softirq 10f39bb1
rcu: keep irqs disabled in rcu_read_unlock_special()
rcu: delay task rcu state cleanup in exit_rcu()
rcu: eliminate rcu read site deadlock
rcu: call rcu_read_unlock_special() in rcu_preempt_check_callbacks()
rcu: add # of deferred _special() statistics
rcu: remove irq work for rsp_wakeup()

include/linux/rcupdate.h | 2 +-
kernel/rcupdate.c | 2 +-
kernel/rcutree.c | 17 +--------
kernel/rcutree.h | 2 +-
kernel/rcutree_plugin.h | 82 ++++++++++++++++++++++++++++++++++-----------
kernel/rcutree_trace.c | 1 +
6 files changed, 68 insertions(+), 38 deletions(-)

--
1.7.4.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/