diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-04-13 14:30:26 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-04-13 14:30:26 -0400 |
| commit | bf20753c0cdf842c5c65af688c2cefd1eafa7630 (patch) | |
| tree | 8431fb73349b928d93ce02e24c1c993562fa1f95 /kernel | |
| parent | 01599fca6758d2cd133e78f87426fc851c9ea725 (diff) | |
| parent | 574bbe782057fdf0490dc7dec906a2dc26363e20 (diff) | |
Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
lockdep: continue lock debugging despite some taints
lockdep: warn about lockdep disabling after kernel taint
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/panic.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/kernel/panic.c b/kernel/panic.c index 3fd8c5bf8b39..934fb377f4b3 100644 --- a/kernel/panic.c +++ b/kernel/panic.c | |||
| @@ -213,8 +213,16 @@ unsigned long get_taint(void) | |||
| 213 | 213 | ||
| 214 | void add_taint(unsigned flag) | 214 | void add_taint(unsigned flag) |
| 215 | { | 215 | { |
| 216 | /* can't trust the integrity of the kernel anymore: */ | 216 | /* |
| 217 | debug_locks = 0; | 217 | * Can't trust the integrity of the kernel anymore. |
| 218 | * We don't call directly debug_locks_off() because the issue | ||
| 219 | * is not necessarily serious enough to set oops_in_progress to 1 | ||
| 220 | * Also we want to keep up lockdep for staging development and | ||
| 221 | * post-warning case. | ||
| 222 | */ | ||
| 223 | if (flag != TAINT_CRAP && flag != TAINT_WARN && __debug_locks_off()) | ||
| 224 | printk(KERN_WARNING "Disabling lockdep due to kernel taint\n"); | ||
| 225 | |||
| 218 | set_bit(flag, &tainted_mask); | 226 | set_bit(flag, &tainted_mask); |
| 219 | } | 227 | } |
| 220 | EXPORT_SYMBOL(add_taint); | 228 | EXPORT_SYMBOL(add_taint); |
