Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: BUG: sleeping function called from invalid context at kernel/mutex.c | Date | Wed, 6 Apr 2011 06:43:38 +0200 |
| |
On Tuesday, April 05, 2011, Peter Zijlstra wrote: > On Sat, 2011-04-02 at 21:12 +0200, Thomas Gleixner wrote: > > > > And it is safe enough for the resume case as well, it simply cannot go > > to sleep because nothing else can hold that mutex in the early resume > > code. We take the mutex during early boot as well, but there the might > > sleep checks are disabled. And we should do the very same thing in the > > early resume code as well. Rafael, PeterZ ??? > > the $subject text sound like it triggered might_sleep(), and that had a > system_state != SYSTEM_RUNNING bail condition, but then, I've no clue > what resume looks like.
Early resume looks pretty much like the system startup, e.g. everything called from syscore_ops should not be sleepable (although mutexes shouldn't trigger, because that code is effectively single-threaded, unless somebody holds the mutex in question when that code is being executed, but that would deadlock anyway).
Thanks, Rafael
| |