From: "Luis R. Rodriguez" <[email protected]> At times we may add module parameters or debugging / testing kernel features, when enabled though we don't really want to be spending time debugging them. Add a taint flag for this to avoid spurious bug reports.
Cc: Rusty Russell <[email protected]> Cc: Tejun Heo <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Signed-off-by: Luis R. Rodriguez <[email protected]> --- Documentation/sysctl/kernel.txt | 1 + include/linux/kernel.h | 1 + kernel/module.c | 4 ++-- kernel/panic.c | 2 ++ 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt index f79eb96..1780a68 100644 --- a/Documentation/sysctl/kernel.txt +++ b/Documentation/sysctl/kernel.txt @@ -827,6 +827,7 @@ can be ORed together: 8192 - An unsigned module has been loaded in a kernel supporting module signature. 16384 - A soft lockup has previously occurred on the system. +32768 - A possibly disruptive testing / debug kernel feature has been enabled ============================================================== diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 95624be..8901809 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -471,6 +471,7 @@ extern enum system_states { #define TAINT_OOT_MODULE 12 #define TAINT_UNSIGNED_MODULE 13 #define TAINT_SOFTLOCKUP 14 +#define TAINT_DEBUG 15 extern const char hex_asc[]; #define hex_asc_lo(x) hex_asc[((x) & 0x0f)] diff --git a/kernel/module.c b/kernel/module.c index 03214bd2..3f7d02a 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -1013,8 +1013,8 @@ static size_t module_flags_taint(struct module *mod, char *buf) buf[l++] = 'E'; /* * TAINT_FORCED_RMMOD: could be added. - * TAINT_CPU_OUT_OF_SPEC, TAINT_MACHINE_CHECK, TAINT_BAD_PAGE don't - * apply to modules. + * TAINT_CPU_OUT_OF_SPEC, TAINT_MACHINE_CHECK, TAINT_BAD_PAGE + * and TAINT_DEBUG don't apply to modules. */ return l; } diff --git a/kernel/panic.c b/kernel/panic.c index d09dc5c..8e5a77b 100644 --- a/kernel/panic.c +++ b/kernel/panic.c @@ -225,6 +225,7 @@ static const struct tnt tnts[] = { { TAINT_OOT_MODULE, 'O', ' ' }, { TAINT_UNSIGNED_MODULE, 'E', ' ' }, { TAINT_SOFTLOCKUP, 'L', ' ' }, + { TAINT_DEBUG, 'T', ' ' }, }; /** @@ -244,6 +245,7 @@ static const struct tnt tnts[] = { * 'I' - Working around severe firmware bug. * 'O' - Out-of-tree module has been loaded. * 'E' - Unsigned module has been loaded. + * 'T' - System has enabled an intrusive testing / debug kernel feature. * * The string is overwritten by the next call to print_tainted(). */ -- 2.1.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

