Re: [linux-pm] [BUG] sleeping function called from invalid contextduring resume

From: Alan Stern
Date: Fri Jul 07 2006 - 20:43:55 EST


On Sat, 8 Jul 2006, Pavel Machek wrote:

> > I didn't propose that kmalloc callers peek at system_state.
> > I proposed that system_state be set properly on resume
> > exactly like it is set on boot -- SYSTEM_RUNNING means
> > we are up with interrupts enabled.
> >
> > Note that this issue is not specific to ACPI, any other code
> > that calls kmalloc during resume will hit __might_sleep().
> > This is taken care of by system_state in the case of boot
> > and the callers don't know anything about it -- resume
> > is the same case and should work the same way.
>
> I'd agree with Andrew here -- lets not mess with system_state. It is
> broken by design, anyway.
>
> Part of code would prefer SYSTEM_BOOTING during resume (because we are
> initializing the devices), but I'm pretty sure some other piece of
> code will get confused by that.

Whichever way you guys decide this should go, let me know. I'm sitting on
a patch for ACPI (a couple of routines that make blocking calls with
interrupts disabled) and I'd like to know what to do with it. Should I
just send it to Len and linux-acpi as is?

Alan Stern

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/