[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <6BD5252F-96CD-49D9-86C7-18115294D913@cam.ac.uk>
Date: Sun, 27 May 2007 21:45:35 +0100
From: Michael-Luke Jones <mlj28@....ac.uk>
To: "Rafael J. Wysocki" <rjw@...k.pl>
Cc: pm list <linux-pm@...ts.linux-foundation.org>,
LKML <linux-kernel@...r.kernel.org>,
Matthew Garrett <mjg59@...f.ucam.org>,
Nigel Cunningham <nigel@...el.suspend2.net>,
Pavel Machek <pavel@....cz>,
Alan Stern <stern@...land.harvard.edu>,
Oliver Neukum <oliver@...kum.org>
Subject: Re: [RFC][PATCH -mm 3/3] PM: Disable _request_firmware before hibernation/suspend
On 27 May 2007, at 21:31, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rjw@...k.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@...k.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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists