git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gpiolib: introduce set_debounce method
[safe/jmp/linux-2.6]
/
kernel
/
lockdep.c
diff --git
a/kernel/lockdep.c
b/kernel/lockdep.c
index
4349e97
..
5428679
100644
(file)
--- a/
kernel/lockdep.c
+++ b/
kernel/lockdep.c
@@
-2711,6
+2711,8
@@
void lockdep_init_map(struct lockdep_map *lock, const char *name,
}
EXPORT_SYMBOL_GPL(lockdep_init_map);
}
EXPORT_SYMBOL_GPL(lockdep_init_map);
+struct lock_class_key __lockdep_no_validate__;
+
/*
* This gets called for every mutex_lock*()/spin_lock*() operation.
* We maintain the dependency maps and validate the locking attempt:
/*
* This gets called for every mutex_lock*()/spin_lock*() operation.
* We maintain the dependency maps and validate the locking attempt:
@@
-2745,6
+2747,9
@@
static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
return 0;
}
return 0;
}
+ if (lock->key == &__lockdep_no_validate__)
+ check = 1;
+
if (!subclass)
class = lock->class_cache;
/*
if (!subclass)
class = lock->class_cache;
/*
@@
-3232,7
+3237,7
@@
void lock_release(struct lockdep_map *lock, int nested,
raw_local_irq_save(flags);
check_flags(flags);
current->lockdep_recursion = 1;
raw_local_irq_save(flags);
check_flags(flags);
current->lockdep_recursion = 1;
- trace_lock_release(lock,
nested,
ip);
+ trace_lock_release(lock, ip);
__lock_release(lock, nested, ip);
current->lockdep_recursion = 0;
raw_local_irq_restore(flags);
__lock_release(lock, nested, ip);
current->lockdep_recursion = 0;
raw_local_irq_restore(flags);
@@
-3385,7
+3390,7
@@
found_it:
hlock->holdtime_stamp = now;
}
hlock->holdtime_stamp = now;
}
- trace_lock_acquired(lock, ip
, waittime
);
+ trace_lock_acquired(lock, ip);
stats = get_lock_stats(hlock_class(hlock));
if (waittime) {
stats = get_lock_stats(hlock_class(hlock));
if (waittime) {