mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-23 07:12:09 +00:00
lockdep: Add novalidate class for dev->mutex conversion
The conversion of device->sem to device->mutex resulted in lockdep warnings. Create a novalidate class for now until the driver folks come up with separate classes. That way we have at least the basic mutex debugging coverage. Add a checkpatch error so the usage is reserved for device->mutex. [ tglx: checkpatch and compile fix for LOCKDEP=n ] Signed-off-by: Peter Zijlstra <peterz@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
3142788b79
commit
1704f47b50
4 changed files with 25 additions and 0 deletions
|
@ -2656,6 +2656,7 @@ sub process {
|
|||
# check for semaphores used as mutexes
|
||||
if ($line =~ /^.\s*init_MUTEX_LOCKED\s*\(/) {
|
||||
WARN("consider using a completion\n" . $herecurr);
|
||||
|
||||
}
|
||||
# recommend strict_strto* over simple_strto*
|
||||
if ($line =~ /\bsimple_(strto.*?)\s*\(/) {
|
||||
|
@ -2740,6 +2741,16 @@ sub process {
|
|||
WARN("use of in_atomic() is incorrect outside core kernel code\n" . $herecurr);
|
||||
}
|
||||
}
|
||||
|
||||
# check for lockdep_set_novalidate_class
|
||||
if ($line =~ /^.\s*lockdep_set_novalidate_class\s*\(/ ||
|
||||
$line =~ /__lockdep_no_validate__\s*\)/ ) {
|
||||
if ($realfile !~ m@^kernel/lockdep@ &&
|
||||
$realfile !~ m@^include/linux/lockdep@ &&
|
||||
$realfile !~ m@^drivers/base/core@) {
|
||||
ERROR("lockdep_no_validate class is reserved for device->mutex.\n" . $herecurr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# If we have no input at all, then there is nothing to report on
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue