ksummit.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Guenter Roeck <linux@roeck-us.net>
To: "Bird, Tim" <Tim.Bird@sonymobile.com>
Cc: "ksummit-discuss@lists.linuxfoundation.org"
	<ksummit-discuss@lists.linuxfoundation.org>
Subject: Re: [Ksummit-discuss] RFC: Kernel tinification - kernel config reduction
Date: Wed, 13 Aug 2014 11:07:43 -0700	[thread overview]
Message-ID: <20140813180743.GB16662@roeck-us.net> (raw)
In-Reply-To: <F5184659D418E34EA12B1903EE5EF5FD0130D4AC5B90@seldmbx02.corpusers.net>

On Wed, Aug 13, 2014 at 07:29:21PM +0200, Bird, Tim wrote:
> I'd like to raise an issue, ahead of the kernel summit, on the topic of reducing
> kernel config options. (Or, at least, reducing the combinatorial explosion effect
> for config options).
> 
> Earlier this year when some patches were submitted to make the network
> stack more configurable, there was some pushback, due (in part) to the
> introduction of more kernel config options.
> See http://thread.gmane.org/gmane.linux.kernel/1696910
> I think it is reasonable to be concerned over the testability of myriad config
> options.
> 
> In the past, there have been efforts to curb the number of kernel config
> options, but since we now stand at about 15,000 options throughout the
> kernel, this seems like a battle we've mostly given up on.
> 
> I propose that we remove or hide a lot of the configuration options related
> to size, and instead focus on size profiles. When someone wants to build a
> minimal Linux system, they don't really want to manually trim down every
> Linux sub-system.  The more common development case is that they want
> a fully minimal Linux system, except for one or two areas where they want
> some flexibility in features.  I propose that we tie most of the options that
> are currently in the kernel for size reasons to a single or a few meta-options:
> e.g. CONFIG_SMALL, CONFIG_TINY, CONFIG_RIDICULOUS.  These
> different meta-config options can get better testing, and this will help curb
> the proliferation of size-related config options (and the resulting test
> combination explosion for those individual options.)
> 
> Note that this would be for sub-system related (feature or size) config options,
> and not driver-related config options.  Obviously, you have to have drivers
> for the hardware you plan to run on.
> 
> Optimally it would be nice to have the ability to configure a small system, and
> then "back off" of the tiny config in a particular area (say networking).
> I believe this would yield a much more tractable system for building small
> systems with Linux, than the current situation.
> 
> I'd like to discuss implementation ideas for this in the hallway track at KS.
> 
My scope, which is more focused on testing, is a bit different.

Major problem I see is that many architecture maintainers don't seem to care
about "make allmodconfig" and/or "make allyesconfig", meaning there is no
simple means to at least compile-test all code that _can_ be enabled for
a given architecture. And don't even mention "make randconfig".

Instead of CONFIG_TINY or similar, I would find it more important to get
allmodconfig and/or allyesconfig to work for as many architectures as
possible, and to create some means to help catching errors of the
kind detected by randconfig, only in a more deterministic way.

Guenter

  reply	other threads:[~2014-08-13 18:07 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-13 17:29 Bird, Tim
2014-08-13 18:07 ` Guenter Roeck [this message]
2014-08-13 19:53   ` Geert Uytterhoeven
2014-08-13 22:45     ` Guenter Roeck
2014-08-14  0:14       ` Mark Brown
2014-08-14  0:38         ` Guenter Roeck
2014-08-14 15:33           ` Mark Brown
2014-08-14  7:49         ` Geert Uytterhoeven
2014-08-14 16:39           ` Mark Brown
2014-08-14  7:40       ` Geert Uytterhoeven
2014-08-14  8:50         ` Guenter Roeck
2014-08-14  9:02           ` Geert Uytterhoeven
2014-08-15 11:04             ` Guenter Roeck
2014-08-14 19:57   ` Stefan Hengelein
2014-08-13 19:19 ` josh
2014-08-14 16:30   ` Tim Bird
2014-08-14 17:17     ` Josh Triplett
2014-08-14 16:03 ` Christoph Lameter
2014-08-14 18:54 ` Jan Kara

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140813180743.GB16662@roeck-us.net \
    --to=linux@roeck-us.net \
    --cc=Tim.Bird@sonymobile.com \
    --cc=ksummit-discuss@lists.linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox