diff options
author | Paul Mundt <lethal@linux-sh.org> | 2008-07-04 09:59:36 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-04 10:40:05 -0700 |
commit | da9eac8990dc614ab4756f2a3d84870b675f1f1e (patch) | |
tree | 6b2361df995b9e895fec50f9e8f9c00190a53754 /lib/bug.c | |
parent | c4a2d7fbec3029c8891a3ad5fceec2992096a3b7 (diff) | |
download | linux-da9eac8990dc614ab4756f2a3d84870b675f1f1e.tar.gz linux-da9eac8990dc614ab4756f2a3d84870b675f1f1e.tar.bz2 linux-da9eac8990dc614ab4756f2a3d84870b675f1f1e.zip |
lib: taint kernel in common report_bug() WARN path.
Commit 95b570c9cef3b12356454c7112571b7e406b4b51 ("Taint kernel after
WARN_ON(condition)") introduced a TAINT_WARN that was implemented for
all architectures using the generic warn_on_slowpath(), which excluded
any architecture that set HAVE_ARCH_WARN_ON.
As all of the architectures that implement their own WARN_ON() all go
through the report_bug() path (specifically handling BUG_TRAP_TYPE_WARN),
taint the kernel there as well for consistency.
Tested on avr32 and sh. Also relevant for s390, parisc, and powerpc.
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Acked-by: Kyle McMartin <kyle@mcmartin.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/bug.c')
-rw-r--r-- | lib/bug.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/bug.c b/lib/bug.c index 530f38f55787..bfeafd60ee9f 100644 --- a/lib/bug.c +++ b/lib/bug.c @@ -37,6 +37,7 @@ */ #include <linux/list.h> #include <linux/module.h> +#include <linux/kernel.h> #include <linux/bug.h> #include <linux/sched.h> @@ -149,6 +150,7 @@ enum bug_trap_type report_bug(unsigned long bugaddr, struct pt_regs *regs) (void *)bugaddr); show_regs(regs); + add_taint(TAINT_WARN); return BUG_TRAP_TYPE_WARN; } |