[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <878tj1ql6z.fsf@kamboji.qca.qualcomm.com>
Date: Thu, 03 Aug 2017 08:23:00 +0300
From: Kalle Valo <kvalo@...eaurora.org>
To: "Luis R. Rodriguez" <mcgrof@...nel.org>
Cc: Rafał Miłecki <zajec5@...il.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Daniel Wagner <wagi@...om.org>,
David Woodhouse <dwmw2@...radead.org>,
Arend van Spriel <arend.vanspriel@...adcom.com>,
"Rafael J . Wysocki" <rjw@...ysocki.net>, yi1.li@...ux.intel.com,
atull@...nel.org, Moritz Fischer <moritz.fischer@...us.com>,
pmladek@...e.com, Johannes Berg <johannes.berg@...el.com>,
emmanuel.grumbach@...el.com, luciano.coelho@...el.com,
luto@...nel.org, Linus Torvalds <torvalds@...ux-foundation.org>,
Kees Cook <keescook@...omium.org>,
AKASHI Takahiro <takahiro.akashi@...aro.org>,
David Howells <dhowells@...hat.com>, pjones@...hat.com,
Hans de Goede <hdegoede@...hat.com>, alan@...ux.intel.com,
tytso@....edu, lkml <linux-kernel@...r.kernel.org>,
Franky Lin <franky.lin@...adcom.com>,
Hante Meuleman <hante.meuleman@...adcom.com>,
Chi-Hsien Lin <chi-hsien.lin@...ress.com>,
Wright Feng <wright.feng@...ress.com>,
Pieter-Paul Giesberts <pieter-paul.giesberts@...adcom.com>,
linux-wireless@...r.kernel.org, netdev@...r.kernel.org,
Rafał Miłecki
<rafal@...ecki.pl>
Subject: Re: [PATCH V5 1/2] firmware: add more flexible request_firmware_async function
"Luis R. Rodriguez" <mcgrof@...nel.org> writes:
>> +int request_firmware_nowait(struct module *module, bool uevent,
>> + const char *name, struct device *device, gfp_t gfp,
>> + void *context,
>> + void (*cont)(const struct firmware *fw, void *context))
>> +{
>> + unsigned int opt_flags = FW_OPT_FALLBACK |
>> + (uevent ? FW_OPT_UEVENT : FW_OPT_USERHELPER);
>> +
>> + return __request_firmware_nowait(module, opt_flags, name, device, gfp,
>> + context, cont);
>> +}
>> EXPORT_SYMBOL(request_firmware_nowait);
>>
>> +int __request_firmware_async(struct module *module, const char *name,
>> + struct firmware_opts *fw_opts, struct device *dev,
>> + void *context,
>> + void (*cont)(const struct firmware *fw, void *context))
>> +{
>> + unsigned int opt_flags = FW_OPT_UEVENT;
>
> This exposes a long issue. Think -- why do we want this enabled by default? Its
> actually because even though the fallback stuff is optional and can be, the uevent
> internal flag *also* provides caching support as a side consequence only. We
> don't want to add a new API without first cleaning up that mess.
>
> This is a slipery slope and best to clean that up before adding any new API.
>
> That and also Greg recently stated he would like to see at least 3 users of
> a feature before adding it. Although I think that's pretty arbitrary, and
> considering that request_firmware_into_buf() only has *one* user -- its what
> he wishes.
ath10k at least needs a way to silence the warning for missing firmware
and I think iwlwifi also.
--
Kalle Valo
Powered by blists - more mailing lists