rcu: add lockdep-based diagnostics to rcu_dereference()
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest8 patches 11 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/8 | rcu: introduce lockdep-based checking to RCU read-side primitivesinclude/ include/ kernel/ +3 more | +253 | 1 reply | |
| 2/8 | rcu: add lockdep-enabled variants of rcu_dereference()include/ include/ | +42 | 1 reply | |
| 3/8 | rcu: disable lockdep checking in RCU list-traversal primitivesinclude/ include/ | +9 | 1 reply | |
| 4/8 | net: add checking to rcu_dereference() primitivesnet/ net/ net/ +3 more | +20 | 1 reply | |
| 5/8 | sched: use lockdep-based checking on rcu_dereference()include/ include/ init/ +5 more | +23 | 1 reply | |
| 6/8 | vfs: apply lockdep-based checking to rcu_dereference() usesfs/ include/ | +6 | 1 reply | |
| 7/8 | radix-tree: disable RCU lockdep checking in radix treelib/ | +12 | 1 reply | |
| 8/8 | idr: apply lockdep-based diagnostics to rcu_dereference() useslib/ | +4 | 1 reply |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH tip/core/rcu 0/8] rcu: add lockdep-based diagnostics to rcu_dereference()
Hello!
This patch series adds lockdep-based checking to the rcu_dereference() primitive in order to flag misuses of RCU. The first three patches put the RCU infrastructure in place, while the last five use this infrastructure in the net, sched, vfs, radix-tree, and idr subsystems. There are very likely additional changes required.
Thanx, Paul
b/fs/file.c | 2 b/include/linux/cgroup.h | 2 b/include/linux/cred.h | 2 b/include/linux/fdtable.h | 8 +- b/include/linux/rculist.h | 14 ++-- b/include/linux/rculist_nulls.h | 5 - b/include/linux/rcupdate.h | 124 ++++++++++++++++++++++++++++++++++++---- b/include/linux/srcu.h | 87 +++++++++++++++++++++++++++- b/init/main.c | 2 b/kernel/exit.c | 14 +++- b/kernel/fork.c | 1 b/kernel/notifier.c | 6 - b/kernel/pid.c | 2 b/kernel/rcupdate.c | 10 +++ b/kernel/rcutorture.c | 12 +++ b/kernel/sched.c | 7 -- b/kernel/srcu.c | 50 ++++++++++------ b/lib/debug_locks.c | 2 b/lib/idr.c | 9 +- b/lib/radix-tree.c | 25 +++----- b/net/core/dev.c | 2 b/net/core/filter.c | 6 - b/net/core/sock.c | 2 b/net/decnet/dn_route.c | 14 ++-- b/net/ipv4/route.c | 14 ++-- b/net/packet/af_packet.c | 3 include/linux/rcupdate.h | 45 ++++++++++---- include/linux/srcu.h | 9 ++ 28 files changed, 369 insertions(+), 110 deletions(-)