Re: [PATCH] kconfig: Make allnoconfig disable options behind EMBEDDED and EXPERT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 25, 2014 at 01:09:25PM -0800, Andrew Morton wrote:
> On Sun, 23 Feb 2014 18:20:26 -0800 Josh Triplett <josh@xxxxxxxxxxxxxxxx> wrote:
> > "make allnoconfig" exists to ease testing of minimal configurations.
> > Documentation/SubmitChecklist includes a note to test with allnoconfig.
> > This helps catch missing dependencies on common-but-not-required
> > functionality, which might otherwise go unnoticed.
> > 
> > However, allnoconfig still leaves many symbols enabled, because they're
> > hidden behind CONFIG_EMBEDDED or CONFIG_EXPERT.  For instance,
> > allnoconfig still has CONFIG_PRINTK and CONFIG_BLOCK enabled, so drivers
> > don't typically get build-tested with those disabled.
> > 
> > To address this, introduce a new Kconfig option "allnoconfig_y", used on
> > symbols which only exist to hide other symbols.  Set it on
> > CONFIG_EMBEDDED (which then selects CONFIG_EXPERT).  allnoconfig will
> > then disable all the symbols hidden behind those.
> 
> Now look what you've done!
> 
> kernel/sched/core.c: In function 'pick_next_task':
> kernel/sched/core.c:2613: warning: control reaches end of non-void function

Hey, look, now allnoconfig turns off more of the more-rarely-disabled
options, and turns up bugs and warnings that most people don't see!
Yay! ;)

So, yes, we should go ahead and get BUG() fixed properly, at a minimum
by using __builtin_unreachable().  I'll send a patch for that, as a
followup to the thread where Arnd mentioned how to do so.

- Josh Triplett
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux