Locks
This case checks for RCU locks that are not released or that are taken more
than once.
LockRCU
Semantic patches
- Semantic match finding an RCU lock that is
taken but not released. This should be used with the following pairs of
arguments, representing the locking and unlocking functions, respectively:
-
-D rcu_read_lock=rcu_read_lock
-D rcu_read_unlock=rcu_read_unlock
-D rcu_read_lock=srcu_read_lock
-D rcu_read_unlock=srcu_read_unlock
-D rcu_read_lock=rcu_read_lock_bh
-D rcu_read_unlock=rcu_read_unlock_bh
-D rcu_read_lock=rcu_read_lock_sched
-D rcu_read_unlock=rcu_read_unlock_sched
-D rcu_read_lock_sched=rcu_read_lock_sched_notrace
-D rcu_read_unlock_sched=rcu_read_unlock_sched_notrace
- A note finding semantic
match.
This refers to this semantic
match.
Results
- Linux 2.6, missing rcu_read_unlock:
Results,
Correlation information
- Linux 2.6, missing srcu_read_unlock:
Results,
Correlation information
- Linux 2.6, missing rcu_read_unlock_bh:
Results,
Correlation information
- Linux 2.6, missing rcu_read_unlock_sched:
Results,
Correlation information
- Linux 2.6, missing rcu_read_unlock_sched_notrace:
Results,
Correlation information