diff options
Diffstat (limited to 'kernel/panic.c')
| -rw-r--r-- | kernel/panic.c | 17 | 
1 files changed, 13 insertions, 4 deletions
diff --git a/kernel/panic.c b/kernel/panic.c index b2659360421..3458469eb7c 100644 --- a/kernel/panic.c +++ b/kernel/panic.c @@ -237,11 +237,20 @@ void add_taint(unsigned flag)  	 * Can't trust the integrity of the kernel anymore.  	 * We don't call directly debug_locks_off() because the issue  	 * is not necessarily serious enough to set oops_in_progress to 1 -	 * Also we want to keep up lockdep for staging development and -	 * post-warning case. +	 * Also we want to keep up lockdep for staging/out-of-tree +	 * development and post-warning case.  	 */ -	if (flag != TAINT_CRAP && flag != TAINT_WARN && __debug_locks_off()) -		printk(KERN_WARNING "Disabling lock debugging due to kernel taint\n"); +	switch (flag) { +	case TAINT_CRAP: +	case TAINT_OOT_MODULE: +	case TAINT_WARN: +	case TAINT_FIRMWARE_WORKAROUND: +		break; + +	default: +		if (__debug_locks_off()) +			printk(KERN_WARNING "Disabling lock debugging due to kernel taint\n"); +	}  	set_bit(flag, &tainted_mask);  }  |