* [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
@ 2015-09-07 12:25 Takashi Iwai
2015-09-07 14:19 ` Jacek Anaszewski
0 siblings, 1 reply; 7+ messages in thread
From: Takashi Iwai @ 2015-09-07 12:25 UTC (permalink / raw)
To: linux-leds
Cc: linux-kernel, Richard Purdie, Jacek Anaszewski, Milo Kim, Bryan Wu
The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
tries to address the firmware file handling with user helper, but it
sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK. Since the
wrong option was enabled, the system got a regression -- it suffers
from the unexpected long delays for non-present firmware files.
This patch corrects the Kconfig dependency to the right one,
CONFIG_FW_LOADER_USER_HELPER. This doesn't change the fallback
behavior but only enables UMH when needed.
Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
Cc: <stable@vger.kernel.org> # v4.2+
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
drivers/leds/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
index 70f4255ff291..2ba52bc2e174 100644
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
@@ -229,7 +229,7 @@ config LEDS_LP55XX_COMMON
tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
select FW_LOADER
- select FW_LOADER_USER_HELPER_FALLBACK
+ select FW_LOADER_USER_HELPER
help
This option supports common operations for LP5521/5523/55231/5562/8501
devices.
--
2.5.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
2015-09-07 12:25 [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper Takashi Iwai
@ 2015-09-07 14:19 ` Jacek Anaszewski
2015-09-08 0:30 ` Kim, Milo
0 siblings, 1 reply; 7+ messages in thread
From: Jacek Anaszewski @ 2015-09-07 14:19 UTC (permalink / raw)
To: Takashi Iwai, Milo Kim; +Cc: linux-leds, linux-kernel, Richard Purdie, Bryan Wu
Hi Takashi,
Thanks for chasing this.
Milo, could you express your opinion?
On 09/07/2015 02:25 PM, Takashi Iwai wrote:
> The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
> tries to address the firmware file handling with user helper, but it
> sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK. Since the
> wrong option was enabled, the system got a regression -- it suffers
> from the unexpected long delays for non-present firmware files.
>
> This patch corrects the Kconfig dependency to the right one,
> CONFIG_FW_LOADER_USER_HELPER. This doesn't change the fallback
> behavior but only enables UMH when needed.
>
> Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
> Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
> Cc: <stable@vger.kernel.org> # v4.2+
> Signed-off-by: Takashi Iwai <tiwai@suse.de>
> ---
> drivers/leds/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
> index 70f4255ff291..2ba52bc2e174 100644
> --- a/drivers/leds/Kconfig
> +++ b/drivers/leds/Kconfig
> @@ -229,7 +229,7 @@ config LEDS_LP55XX_COMMON
> tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
> depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
> select FW_LOADER
> - select FW_LOADER_USER_HELPER_FALLBACK
> + select FW_LOADER_USER_HELPER
> help
> This option supports common operations for LP5521/5523/55231/5562/8501
> devices.
>
--
Best Regards,
Jacek Anaszewski
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
2015-09-07 14:19 ` Jacek Anaszewski
@ 2015-09-08 0:30 ` Kim, Milo
2015-09-08 5:06 ` Takashi Iwai
0 siblings, 1 reply; 7+ messages in thread
From: Kim, Milo @ 2015-09-08 0:30 UTC (permalink / raw)
To: Takashi Iwai
Cc: Jacek Anaszewski, linux-leds, linux-kernel, Richard Purdie, Bryan Wu
Hi Takashi,
On 9/7/2015 11:19 PM, Jacek Anaszewski wrote:
> Hi Takashi,
>
> Thanks for chasing this.
> Milo, could you express your opinion?
>
> On 09/07/2015 02:25 PM, Takashi Iwai wrote:
>> The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
>> tries to address the firmware file handling with user helper, but it
>> sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK. Since the
>> wrong option was enabled, the system got a regression -- it suffers
>> from the unexpected long delays for non-present firmware files.
>>
>> This patch corrects the Kconfig dependency to the right one,
>> CONFIG_FW_LOADER_USER_HELPER. This doesn't change the fallback
>> behavior but only enables UMH when needed.
>>
>> Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
>> Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
>> Cc: <stable@vger.kernel.org> # v4.2+
>> Signed-off-by: Takashi Iwai <tiwai@suse.de>
>> ---
>> drivers/leds/Kconfig | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
>> index 70f4255ff291..2ba52bc2e174 100644
>> --- a/drivers/leds/Kconfig
>> +++ b/drivers/leds/Kconfig
>> @@ -229,7 +229,7 @@ config LEDS_LP55XX_COMMON
>> tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
>> depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
>> select FW_LOADER
>> - select FW_LOADER_USER_HELPER_FALLBACK
>> + select FW_LOADER_USER_HELPER
>> help
>> This option supports common operations for LP5521/5523/55231/5562/8501
>> devices.
Thank for catching this. It seems I misunderstood firmware helper
configuration. LP55xx driver uses firmware interface to activate LED
visual effect. So this driver enables FW_LOADER_USER_HELPER_FALLBACK and
calls request_firmware_nowait() without uevent. Then, it will try to
load raw data manually when binary(firmware) file doesn't exist.
I'm still not clear what the difference is between FW_LOADER_USER_HELPER
and FW_LOADER_USER_HELPER_FALLBACK. Kconfig description makes me confused.
Could you explain it in more details?
Best regards,
Milo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
2015-09-08 0:30 ` Kim, Milo
@ 2015-09-08 5:06 ` Takashi Iwai
2015-09-08 7:37 ` Jacek Anaszewski
2015-09-08 8:25 ` Kim, Milo
0 siblings, 2 replies; 7+ messages in thread
From: Takashi Iwai @ 2015-09-08 5:06 UTC (permalink / raw)
To: Kim, Milo
Cc: Jacek Anaszewski, linux-leds, linux-kernel, Richard Purdie, Bryan Wu
On Tue, 08 Sep 2015 02:30:07 +0200,
Kim, Milo wrote:
>
> Hi Takashi,
>
> On 9/7/2015 11:19 PM, Jacek Anaszewski wrote:
> > Hi Takashi,
> >
> > Thanks for chasing this.
> > Milo, could you express your opinion?
> >
> > On 09/07/2015 02:25 PM, Takashi Iwai wrote:
> >> The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
> >> tries to address the firmware file handling with user helper, but it
> >> sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK. Since the
> >> wrong option was enabled, the system got a regression -- it suffers
> >> from the unexpected long delays for non-present firmware files.
> >>
> >> This patch corrects the Kconfig dependency to the right one,
> >> CONFIG_FW_LOADER_USER_HELPER. This doesn't change the fallback
> >> behavior but only enables UMH when needed.
> >>
> >> Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
> >> Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
> >> Cc: <stable@vger.kernel.org> # v4.2+
> >> Signed-off-by: Takashi Iwai <tiwai@suse.de>
> >> ---
> >> drivers/leds/Kconfig | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
> >> index 70f4255ff291..2ba52bc2e174 100644
> >> --- a/drivers/leds/Kconfig
> >> +++ b/drivers/leds/Kconfig
> >> @@ -229,7 +229,7 @@ config LEDS_LP55XX_COMMON
> >> tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
> >> depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
> >> select FW_LOADER
> >> - select FW_LOADER_USER_HELPER_FALLBACK
> >> + select FW_LOADER_USER_HELPER
> >> help
> >> This option supports common operations for LP5521/5523/55231/5562/8501
> >> devices.
>
> Thank for catching this. It seems I misunderstood firmware helper
> configuration. LP55xx driver uses firmware interface to activate LED
> visual effect. So this driver enables FW_LOADER_USER_HELPER_FALLBACK and
> calls request_firmware_nowait() without uevent. Then, it will try to
> load raw data manually when binary(firmware) file doesn't exist.
>
> I'm still not clear what the difference is between FW_LOADER_USER_HELPER
> and FW_LOADER_USER_HELPER_FALLBACK. Kconfig description makes me confused.
> Could you explain it in more details?
FW_LOADER_USER_HELPER_FALLBACK globally enables the fallback to user
helper mode when no file is loaded by the direct f/w loader. It
automatically sets FW_LOADER_USER_HELPER.
OTOH, when FW_LOADER_USER_HELPER is set, requeset_firmware_nowait()
does user mode fallback only when uevent (the second) argument is
false. Note that this is a special case. In the usual cases --
uevent = true or request_firmware() -- its doesn't enable the
fallback.
The fallback to user helper mode is bad for the recent udev, since
udev already dropped the f/w support code completely. Thus every
non-existing f/w load will result in 60 seconds stall.
In short, FW_LOAD_USER_HELPER_FALLBACK is present mostly only for
older systems, just for compatibility. For drivers that need the no
direct f/w load and no udev interaction, set FW_LOAD_USER_HELPER
instead.
Takashi
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
2015-09-08 5:06 ` Takashi Iwai
@ 2015-09-08 7:37 ` Jacek Anaszewski
2015-09-08 8:25 ` Kim, Milo
1 sibling, 0 replies; 7+ messages in thread
From: Jacek Anaszewski @ 2015-09-08 7:37 UTC (permalink / raw)
To: Takashi Iwai
Cc: Kim, Milo, linux-leds, linux-kernel, Richard Purdie, Bryan Wu
On 09/08/2015 07:06 AM, Takashi Iwai wrote:
> On Tue, 08 Sep 2015 02:30:07 +0200,
> Kim, Milo wrote:
>>
>> Hi Takashi,
>>
>> On 9/7/2015 11:19 PM, Jacek Anaszewski wrote:
>>> Hi Takashi,
>>>
>>> Thanks for chasing this.
>>> Milo, could you express your opinion?
>>>
>>> On 09/07/2015 02:25 PM, Takashi Iwai wrote:
>>>> The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
>>>> tries to address the firmware file handling with user helper, but it
>>>> sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK. Since the
>>>> wrong option was enabled, the system got a regression -- it suffers
>>>> from the unexpected long delays for non-present firmware files.
>>>>
>>>> This patch corrects the Kconfig dependency to the right one,
>>>> CONFIG_FW_LOADER_USER_HELPER. This doesn't change the fallback
>>>> behavior but only enables UMH when needed.
>>>>
>>>> Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
>>>> Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
>>>> Cc: <stable@vger.kernel.org> # v4.2+
>>>> Signed-off-by: Takashi Iwai <tiwai@suse.de>
>>>> ---
>>>> drivers/leds/Kconfig | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
>>>> index 70f4255ff291..2ba52bc2e174 100644
>>>> --- a/drivers/leds/Kconfig
>>>> +++ b/drivers/leds/Kconfig
>>>> @@ -229,7 +229,7 @@ config LEDS_LP55XX_COMMON
>>>> tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
>>>> depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
>>>> select FW_LOADER
>>>> - select FW_LOADER_USER_HELPER_FALLBACK
>>>> + select FW_LOADER_USER_HELPER
>>>> help
>>>> This option supports common operations for LP5521/5523/55231/5562/8501
>>>> devices.
>>
>> Thank for catching this. It seems I misunderstood firmware helper
>> configuration. LP55xx driver uses firmware interface to activate LED
>> visual effect. So this driver enables FW_LOADER_USER_HELPER_FALLBACK and
>> calls request_firmware_nowait() without uevent. Then, it will try to
>> load raw data manually when binary(firmware) file doesn't exist.
>>
>> I'm still not clear what the difference is between FW_LOADER_USER_HELPER
>> and FW_LOADER_USER_HELPER_FALLBACK. Kconfig description makes me confused.
>> Could you explain it in more details?
>
> FW_LOADER_USER_HELPER_FALLBACK globally enables the fallback to user
> helper mode when no file is loaded by the direct f/w loader. It
> automatically sets FW_LOADER_USER_HELPER.
>
> OTOH, when FW_LOADER_USER_HELPER is set, requeset_firmware_nowait()
> does user mode fallback only when uevent (the second) argument is
> false. Note that this is a special case. In the usual cases --
> uevent = true or request_firmware() -- its doesn't enable the
> fallback.
>
> The fallback to user helper mode is bad for the recent udev, since
> udev already dropped the f/w support code completely. Thus every
> non-existing f/w load will result in 60 seconds stall.
>
> In short, FW_LOAD_USER_HELPER_FALLBACK is present mostly only for
> older systems, just for compatibility. For drivers that need the no
> direct f/w load and no udev interaction, set FW_LOAD_USER_HELPER
> instead.
Merged to fixes-for-4.3 branch of linux-leds.git.
Thanks for this explanation.
--
Best Regards,
Jacek Anaszewski
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
2015-09-08 5:06 ` Takashi Iwai
2015-09-08 7:37 ` Jacek Anaszewski
@ 2015-09-08 8:25 ` Kim, Milo
2015-09-08 9:03 ` Takashi Iwai
1 sibling, 1 reply; 7+ messages in thread
From: Kim, Milo @ 2015-09-08 8:25 UTC (permalink / raw)
To: Takashi Iwai
Cc: Jacek Anaszewski, linux-leds, linux-kernel, Richard Purdie, Bryan Wu
Hi Takashi,
On 9/8/2015 2:06 PM, Takashi Iwai wrote:
> On Tue, 08 Sep 2015 02:30:07 +0200,
> Kim, Milo wrote:
>>
>> Hi Takashi,
>>
>> On 9/7/2015 11:19 PM, Jacek Anaszewski wrote:
>>> Hi Takashi,
>>>
>>> Thanks for chasing this.
>>> Milo, could you express your opinion?
>>>
>>> On 09/07/2015 02:25 PM, Takashi Iwai wrote:
>>>> The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
>>>> tries to address the firmware file handling with user helper, but it
>>>> sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK. Since the
>>>> wrong option was enabled, the system got a regression -- it suffers
>>>> from the unexpected long delays for non-present firmware files.
>>>>
>>>> This patch corrects the Kconfig dependency to the right one,
>>>> CONFIG_FW_LOADER_USER_HELPER. This doesn't change the fallback
>>>> behavior but only enables UMH when needed.
>>>>
>>>> Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
>>>> Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
>>>> Cc: <stable@vger.kernel.org> # v4.2+
>>>> Signed-off-by: Takashi Iwai <tiwai@suse.de>
>>>> ---
>>>> drivers/leds/Kconfig | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
>>>> index 70f4255ff291..2ba52bc2e174 100644
>>>> --- a/drivers/leds/Kconfig
>>>> +++ b/drivers/leds/Kconfig
>>>> @@ -229,7 +229,7 @@ config LEDS_LP55XX_COMMON
>>>> tristate "Common Driver for TI/National LP5521/5523/55231/5562/8501"
>>>> depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 || LEDS_LP8501
>>>> select FW_LOADER
>>>> - select FW_LOADER_USER_HELPER_FALLBACK
>>>> + select FW_LOADER_USER_HELPER
>>>> help
>>>> This option supports common operations for LP5521/5523/55231/5562/8501
>>>> devices.
>>
>> Thank for catching this. It seems I misunderstood firmware helper
>> configuration. LP55xx driver uses firmware interface to activate LED
>> visual effect. So this driver enables FW_LOADER_USER_HELPER_FALLBACK and
>> calls request_firmware_nowait() without uevent. Then, it will try to
>> load raw data manually when binary(firmware) file doesn't exist.
>>
>> I'm still not clear what the difference is between FW_LOADER_USER_HELPER
>> and FW_LOADER_USER_HELPER_FALLBACK. Kconfig description makes me confused.
>> Could you explain it in more details?
>
> FW_LOADER_USER_HELPER_FALLBACK globally enables the fallback to user
> helper mode when no file is loaded by the direct f/w loader. It
> automatically sets FW_LOADER_USER_HELPER.
>
> OTOH, when FW_LOADER_USER_HELPER is set, requeset_firmware_nowait()
> does user mode fallback only when uevent (the second) argument is
> false. Note that this is a special case. In the usual cases --
> uevent = true or request_firmware() -- its doesn't enable the
> fallback.
Yes, I misunderstood here. lp55xx driver needs to enable user mode
helper as *fallback*, so FW_LOADER_USER_HELPER_FALLBACK was set wrong.
Eventually, it enables the option flag, 'FW_OPT_USERHELPER'. So it
affects other drivers which call request_firmware().
> The fallback to user helper mode is bad for the recent udev, since
> udev already dropped the f/w support code completely. Thus every
> non-existing f/w load will result in 60 seconds stall.
However, timeout is changed to MAX_JIFFY_OFFSET when FW_OPT_UEVENT flag
is not set.
static int _request_firmware_load(struct firmware_priv *fw_priv,
unsigned int opt_flags, long timeout)
{
(snip)
if (opt_flags & FW_OPT_UEVENT) {
buf->need_uevent = true;
dev_set_uevent_suppress(f_dev, false);
dev_dbg(f_dev, "firmware: requesting %s\n", buf->fw_id);
kobject_uevent(&fw_priv->dev.kobj, KOBJ_ADD);
} else {
timeout = MAX_JIFFY_OFFSET;
}
retval = wait_for_completion_interruptible_timeout(&buf->completion,
timeout);
}
It will take too long to get the result. I don't know the reason why
timeout was modified in the commit [68ff2a00dbf5: firmware_loader:
handle timeout via wait_for_completion_interruptible_timeout()].
Moreover, this time value is not identical to the result of
timeout_show(). Is it OK to remove the line as follows?
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index 171841a..8187404 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -909,8 +909,6 @@ static int _request_firmware_load(struct
firmware_priv *fw_priv,
dev_set_uevent_suppress(f_dev, false);
dev_dbg(f_dev, "firmware: requesting %s\n", buf->fw_id);
kobject_uevent(&fw_priv->dev.kobj, KOBJ_ADD);
- } else {
- timeout = MAX_JIFFY_OFFSET;
}
retval = wait_for_completion_interruptible_timeout(&buf->completion,
If the driver requires longer loading time, then it can be done by
updating '/sys/class/firmware/timeout'.
> In short, FW_LOAD_USER_HELPER_FALLBACK is present mostly only for
> older systems, just for compatibility. For drivers that need the no
> direct f/w load and no udev interaction, set FW_LOAD_USER_HELPER
> instead.
Got your point. Thanks for clear explanation.
Best regards,
Milo
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper
2015-09-08 8:25 ` Kim, Milo
@ 2015-09-08 9:03 ` Takashi Iwai
0 siblings, 0 replies; 7+ messages in thread
From: Takashi Iwai @ 2015-09-08 9:03 UTC (permalink / raw)
To: Kim, Milo
Cc: Jacek Anaszewski, linux-leds, linux-kernel, Richard Purdie, Bryan Wu
On Tue, 08 Sep 2015 10:25:31 +0200,
Kim, Milo wrote:
>
> > The fallback to user helper mode is bad for the recent udev, since
> > udev already dropped the f/w support code completely. Thus every
> > non-existing f/w load will result in 60 seconds stall.
>
> However, timeout is changed to MAX_JIFFY_OFFSET when FW_OPT_UEVENT flag
> is not set.
>
> static int _request_firmware_load(struct firmware_priv *fw_priv,
> unsigned int opt_flags, long timeout)
> {
> (snip)
>
> if (opt_flags & FW_OPT_UEVENT) {
> buf->need_uevent = true;
> dev_set_uevent_suppress(f_dev, false);
> dev_dbg(f_dev, "firmware: requesting %s\n", buf->fw_id);
> kobject_uevent(&fw_priv->dev.kobj, KOBJ_ADD);
> } else {
> timeout = MAX_JIFFY_OFFSET;
> }
>
> retval = wait_for_completion_interruptible_timeout(&buf->completion,
> timeout);
> }
>
> It will take too long to get the result.
Why it takes too long? It's the timeout, so it happens only when the
input isn't completed.
> I don't know the reason why
> timeout was modified in the commit [68ff2a00dbf5: firmware_loader:
> handle timeout via wait_for_completion_interruptible_timeout()].
My guess about the rationale behind the change is that, if it's no
udev event, the (more-or-less) manual interaction is expected. If
it's done by human, we can't expect that it's typed always so quickly
in time.
> Moreover, this time value is not identical to the result of
> timeout_show().
That's bad, indeed.
> Is it OK to remove the line as follows?
>
> diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
> index 171841a..8187404 100644
> --- a/drivers/base/firmware_class.c
> +++ b/drivers/base/firmware_class.c
> @@ -909,8 +909,6 @@ static int _request_firmware_load(struct
> firmware_priv *fw_priv,
> dev_set_uevent_suppress(f_dev, false);
> dev_dbg(f_dev, "firmware: requesting %s\n", buf->fw_id);
> kobject_uevent(&fw_priv->dev.kobj, KOBJ_ADD);
> - } else {
> - timeout = MAX_JIFFY_OFFSET;
> }
>
> retval = wait_for_completion_interruptible_timeout(&buf->completion,
>
> If the driver requires longer loading time, then it can be done by
> updating '/sys/class/firmware/timeout'.
I guess this would be harmless for most cases. But it's better to
have a clarification why the shorter timeout is mandatory...
thanks,
Takashi
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-09-08 9:03 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-07 12:25 [PATCH] leds:lp55xx: Correct Kconfig dependency for f/w user helper Takashi Iwai
2015-09-07 14:19 ` Jacek Anaszewski
2015-09-08 0:30 ` Kim, Milo
2015-09-08 5:06 ` Takashi Iwai
2015-09-08 7:37 ` Jacek Anaszewski
2015-09-08 8:25 ` Kim, Milo
2015-09-08 9:03 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).