sched/debug: Check for stack overflow in ___might_sleep()
authorEric Sandeen <sandeen@redhat.com>
Tue, 16 Dec 2014 22:25:28 +0000 (16:25 -0600)
committerIngo Molnar <mingo@kernel.org>
Wed, 14 Jan 2015 12:34:14 +0000 (13:34 +0100)
commita8b686b3af4419f92e0ea5be1c76fb68363df8e6
tree2c103c51144d8bbcd97e2a02e1ac95ddb224a109
parent638476007d13534b2ed4134bf0279ef44071140b
sched/debug: Check for stack overflow in ___might_sleep()

Sometimes a "BUG: sleeping function called from invalid context"
message is not indicative of locking problems, but is the result
of a stack overflow corrupting the thread info.

Witness http://oss.sgi.com/archives/xfs/2014-02/msg00325.html
for example, which took a few go-rounds to sort out.

If we're printing the warning, things are wonky already, and
it'd be informative to check for the stack end corruption at this
point, too.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: http://lkml.kernel.org/r/5490B158.4060005@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/core.c