request_firmware_nowait is allowed to be called in atomic
context now if @gfp is GFP_ATOMIC, so fix the obsolete
comments and states which situations are suitable for using
it.

Signed-off-by: Ming Lei <ming....@canonical.com>
---
 drivers/base/firmware_class.c |   10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index 7d3a83b..a47266c 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -846,9 +846,13 @@ static void request_firmware_work_func(struct work_struct 
*work)
  *
  *     Caller must hold the reference count of @device.
  *
- *     Asynchronous variant of request_firmware() for user contexts where
- *     it is not possible to sleep for long time. It can't be called
- *     in atomic contexts.
+ *     Asynchronous variant of request_firmware() for user contexts:
+ *             - sleep for as small periods as possible since it may
+ *             increase kernel boot time of built-in device drivers
+ *             requesting firmware in their ->probe() methods, if
+ *             @gfp is GFP_KERNEL.
+ *
+ *             - can't sleep at all if @gfp is GFP_ATOMIC.
  **/
 int
 request_firmware_nowait(
-- 
1.7.9.5

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

Reply via email to