[PATCH tip/core/rcu 0/4] RCU debug-objects improvements

From: Paul E. McKenney
Date: Tue Apr 23 2013 - 20:33:28 EST


Hello!

RCU's current debug-objects fixups are complex and heavyweight, plus the
fixups are not complete, because even with the fixups, RCU's callback
lists can still be corrupted. This series reworks RCU's use of the
debug-objects facility and the facility itself to allow improved handling
of things like duplicate invocations of call_rcu(). This series includes:

1. Simplify RCU's debug-objects fixups.

2. Make debug_object_activate() return status.

3. Make __call_rcu() leak callbacks when debug_object_activate()
notes suspicious activity. Leaking has its problems, but it
is far better than silent corruption of RCU's data structures.

4. Add a new object_debug option to rcutorture to allow
deterministic testing of #3 above.

Thanx, Paul


b/include/linux/debugobjects.h | 6 +-
b/kernel/rcu.h | 10 ++--
b/kernel/rcupdate.c | 100 -----------------------------------------
b/kernel/rcutorture.c | 37 +++++++++++++++
b/kernel/rcutree.c | 14 +++++
b/lib/debugobjects.c | 20 +++++---
6 files changed, 74 insertions(+), 113 deletions(-)

--
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/