lkml.org 
[lkml]   [2023]   [Jan]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/3] Detect SRCU related deadlocks
Date
This is actually a leftover of the recursive read deadlock detection
patchset:

https://lore.kernel.org/lkml/20180411135647.21496-1-boqun.feng@gmail.com/

I resolve comments then and add more test cases, and hopefully this can
fulfill the request from KVM:

https://lore.kernel.org/lkml/a14a13a690277d4cc95a4b26aa2d9a4d9b392a74.camel@infradead.org/

;-)

The patch #3 is now WIP for two reasons:

* It may conflicts with Paul's patchset on removing CONFIG_SRCU

* I haven't found a proper way to "reinit" srcu_struct when
lockdep selftest runs: cleanup_srcu_struct() needs workqueue
however the tests can run before there is one.

Anyway, these selftests prove the detection actually works. And as
always, feedbacks and comments are welcome!

Regards,
Boqun

Boqun Feng (3):
locking/lockdep: Introduce lock_sync()
rcu: Equip sleepable RCU with lockdep dependency graph checks
WIP: locking/lockdep: selftests: Add selftests for SRCU

include/linux/lockdep.h | 5 +++
include/linux/srcu.h | 23 +++++++++++--
kernel/locking/lockdep.c | 34 +++++++++++++++++++
kernel/rcu/srcutiny.c | 2 ++
kernel/rcu/srcutree.c | 2 ++
lib/locking-selftest.c | 71 ++++++++++++++++++++++++++++++++++++++++
6 files changed, 135 insertions(+), 2 deletions(-)

--
2.38.1

\
 
 \ /
  Last update: 2023-03-26 23:39    [W:0.132 / U:0.244 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site