On Sun, 2007-05-27 at 23:04 +0100, Matthew Garrett wrote: > On Sun, May 27, 2007 at 11:49:30PM +0200, Kay Sievers wrote: > > > What exactly is the problem we see here? The timeout of the firmware loader? > > What goes wrong with frozen userspace, usually there is only a netlink > > message sent from the kernel, which should be received and handled > > just fine when userspace is running again. > > Driver calls request_firmware in the resume method. The userspace helper > can't be run because it's been frozen, so the firmware never gets loaded > and the call times out. The driver then fails to resume. While all this > is happening, the rest of the kernel is blocking on that resume method. > The firmware can be loaded once userspace has been started again, but by > that time the driver has given up. Seems, that's just the broken synchronous firmware loading interface with the useless timeout handling. The nowait version of the same loader doesn't time out, and should not have that problem. The sync version should be removed from the kernel, it just causes all sorts of problems since it exists. Userspace should handle the async request just fine when it comes back running, regardless of the time it was submitted. Kay _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm