Messages in this thread | | | From | Michael-Luke Jones <> | Subject | Re: [RFC][PATCH -mm 3/3] PM: Disable _request_firmware before hibernation/suspend | Date | Sun, 27 May 2007 21:45:35 +0100 |
| |
On 27 May 2007, at 21:31, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rjw@sisk.pl> > > Use a hibernation and suspend notifier to disable the firmware > requesting > mechanism before a hibernation/suspend and enable it after the > operation. > > Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> > > drivers/base/firmware_class.c | 36 ++++++++++++++++++++++++++++++ > ++++++ > 1 file changed, 36 insertions(+)
I don't like this approach, as I feel that the firmware loading interface should be able to detect if a firmware load request is not being handled, due to absence of userspace / hotplug handler presence.
Other circumstances in which this can be a problem is during bootup when request_firmware() calls can be made before userspace is up and init has run (even in the presence of an initramfs).
(Slightly OT: A particularly nasty race is when an initramfs userspace is present, but firmware loading cannot occur because init has not run, so proc hasn't been mounted, so a hotplug event handler cannot be registered, despite the fact that the firmware is sitting on the ramdisk mounted correctly...)
In short, a more general solution would be preferred, and preferably one which allows firmware loading to *actually* occur once userspace has actually turned up and registered a handler :)
Michael-Luke Jones
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |