Re: [PATCH] firmware loader: allow disabling of udev as firmware loader

From: Tom Gundersen
Date: Wed Jun 04 2014 - 10:35:47 EST


On Wed, Jun 4, 2014 at 4:31 PM, Takashi Iwai <tiwai@xxxxxxx> wrote:
> At Wed, 04 Jun 2014 16:20:16 +0200,
> Takashi Iwai wrote:
>>
>> At Mon, 2 Jun 2014 20:24:34 +0200,
>> Tom Gundersen wrote:
>> >
>> > Currently (at least) the dell-rbu driver selects FW_LOADER_USER_HELPER,
>> > which means that distros can't really stop loading firmware through udev
>> > without breaking other users (though some have).
>> >
>> > Ideally we would remove/disable the udev firmware helper in both the kernel
>> > and in udev, but if we were to disable it in udev and not the kernel, the result
>> > would be (seemingly) hung kernels as no one would be around to cancel firmware
>> > requests.
>> >
>> > This patch allows udev firmware loading to be disabled while still allowing
>> > non-udev firmware loading, as done by the dell-rbu driver, to continue
>> > working. This is achieved by only using the fallback mechanism when the
>> > uevent is suppressed.
>> >
>> > Tested with
>> > FW_LOADER_USER_HELPER=n
>> > LATTICE_ECP3_CONFIG=y
>> > DELL_RBU=y
>> > and udev without the firmware loading support, but I don't have the hardware
>> > to test the lattice/dell drivers, so additional testing would be appreciated.
>>
>> The logic of this patch looks good to me, but the Kconfig items become
>> confusing by this. Basically what we'd need is a Kconfig item
>> deciding whether to build the user helper or not, in addition to a
>> Kconfig item for deciding the fallback mode of request_firmware().
>>
>> What about the patch like below instead? It's smaller and the meaning
>> of Kconfig items are clearer. (In the final form, the help text
>> change you added should be included there, too.)
>>
>> The only (and biggest) drawback is, however, that the user-selectable
>> Kconfig would be actually renamed from CONFIG_FW_LOADER_USER_HELPER to
>> CONFIG_FW_LOADER_USER_HELPER_FALLBACK.
>
> Also, since it's deprecated in the udev upstream, let's drop "default
> y", too. (It can be another patch, though.)


Yes, absolutely, this should default to "n".

Cheers,

Tom
--
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/