[PATCH 0/6] firmware_class: Fix problems with usermodehelper test
From: Rafael J. Wysocki
Date: Sun Mar 25 2012 - 18:01:43 EST
The following series of patches fixes two problems with
request_firmware() and request_firmware_nowait() resulting from commit
PM: Print a warning if firmware is requested when tasks are frozen
The first problem is that request_firmware_nowait() may fail if it happens
to run in parallel with system suspend. It should't fail in such situations
and that is addressed by the first three patches (that code has been discussed
with Linus at al already).
The second issue is that request_firmware() may be called in a thread which
isn't related to system suspend and if suspend happens exactly at that time,
request_firmware() will fail (and print a scary warning), although it shouldn't.
This problem is addressed by the remaining three patches, which are new.
[1/6] - Rework the usermodehelper check in _request_firmware().
[2/6] - Split _request_firmware() into three functions.
[3/6] - If firmware is to be loaded asynchronously, wait for usermodehelper_disabled
to be unset instead of failing the operation.
[4/6] - Unify the hibernation/suspend code's usage of usermodehelper_disable().
[5/6] - Move usermodehelper_disable() into freeze_processes().
[6/6] - Make freezable threads calling request_firware() avoid the race with the
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/