Re: [RFC v1] tree-wide: remove "select FW_LOADER" uses

Dmitry Torokhov
2015-05-22T17:57:21Z

On Fri, May 22, 2015 at 10:43:12AM -0700, Luis R. Rodriguez wrote:
> On Fri, May 22, 2015 at 1:44 AM, Takashi Iwai <tiwai@suse.de> wrote:
> > At Fri, 22 May 2015 10:17:48 +0200,
> > Paul Bolle wrote:
> >>
> >> On Fri, 2015-05-22 at 09:11 +0200, Geert Uytterhoeven wrote:
> >> > On Fri, May 22, 2015 at 8:53 AM, Borislav Petkov <bp@alien8.de> wrote:
> >> > > One thing I forgot last night: what about randconfigs? All that
> >> > > functionality which selects FW_LOADER, won't boot anymore, right? I
> >> > > mean, there are provisions to build fine even with FW_LOADER unset but
> >> > > if you want to boot-test those kernels, you will artificially fail due
> >> > > to missing request_firmware* things...
> >>
> >> Luis also tried to explain to me that disabling FW_LOADER shouldn't make
> >> the build fail. (And, of course, we could decide to not care about
> >> randconfig builds that have EXPERT set. Maybe we could even special case
> >> EXPERT in randconfig. But that would make randconfig builds less useful.
> >> That's a separate issue, anyhow.)
> >
> > But FW_LOADER is a tristate, so it might be inconsistent if selected
> > randomly? Luis' patch doesn't add depends but just removes select.
>
> We could go both ways, either remove the "select" or replace it with
> "depends on". As you note keeping the "depends on" ensures run time
> sanity for the possible tristate mismatches, but this is an EXPERT
> concern. The crux of what option to go with is:
>
> Should we concern ourselves with run time configuration issues when
> folks enable EXPERT?

Yes.

dtor@dtor-ws:~/kernel/master$ grep -r CONFIG_EXPERT /boot/config*
/boot/config-3.13.0-49-generic:CONFIG_EXPERT=y
/boot/config-3.13.0-52-generic:CONFIG_EXPERT=y

This is distro config and that is what many people use as a base for
their own configs.

>
> Without EXPERT all run time configurations are vetted to run as
> FW_LOADER defaults to y. If we go down the path of removing the select
> completely we'd be taking a position that we could at least ensure
> EXPERT builds will work, but we cannot vet for not run time sanity of
> such build. I favor simplicity so would prefer to nuke the select
> completely and if we're really concerned about EXPERT users tristate
> mismatch misconfiguration why not just replace tristate with bool for
> FW_LOADER. That would do us the service of simplifying that code a
> bit, and leave only in place one way for folks that enable EXPERT to
> shoot themselves in the foot with FW_LOADER?

I am afraid that we are moving into wrong direction here. Why don't we
look into Kconfig to teach it the difference between forced selection
and dependency instead?

Thanks.

--
Dmitry