Re: [PATCH] sched/core: add taint on "BUG: sleeping function called from invalid context"

From: Vegard Nossum
Date: Fri Jul 29 2016 - 02:30:31 EST


On 07/29/2016 03:22 AM, Rusty Russell wrote:
Vegard Nossum <vegard.nossum@xxxxxxxxxx> writes:
Seeing this, it occurs to me that we should probably add a taint here:

Taint has traditionally meant "the user did something unsupported, take
the bug report with a grain of salt". Such as force removing a module.

So this seems wrong...

There are many types of taints. This is the one you mentioned:

2 - A module was force loaded by insmod -f.

This is the one I'd like to set:

512 - A kernel warning has occurred.

(from Documentation/sysctl/kernel.txt).

The flag I want to set is also set on any kind of WARN().

BUG: sleeping function called from invalid context at mm/slab.h:388
in_atomic(): 0, irqs_disabled(): 0, pid: 32211, name: trinity-c3
Preemption disabled at:[<ffffffff811aaa37>] console_unlock+0x2f7/0x930

I am not proposing this patch on a whim: it was actually hiding real
bugs because I only saw an oops that happened later when in fact the
real bug happened where the "sleeping function called from invalid
context" was called.


Vegard