diff options
| author | Ingo Molnar <[email protected]> | 2006-12-06 20:40:50 -0800 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2006-12-07 08:39:46 -0800 |
| commit | 70e4506765602cca047cfa31933836e354c61a63 (patch) | |
| tree | b490e5066404eab1ec7cf5147521c0bd53226b07 /include/linux/debugobjects.h | |
| parent | 72be2ccfff0e0e332b32f7ef8372890e39b7c4cb (diff) | |
[PATCH] lockdep: register_lock_class() fix
The hash_lock must only ever be taken with irqs disabled. This happens in
all the important places, except one codepath: register_lock_class(). The
race should trigger rarely because register_lock_class() is quite rare and
single-threaded (happens during init most of the time).
The fix is to disable irqs.
( bug found live in -rt: there preemption is alot more agressive and
preempting with the hash-lock held caused a lockup.)
Signed-off-by: Ingo Molnar <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions