[PATCH 00/12][RFC] Intial Kconfig Fragment Demo

John Stultz john.stultz at linaro.org
Wed Mar 9 18:18:37 UTC 2011


On Wed, 2011-03-09 at 10:17 +0200, Amit Kucheria wrote:
> On Wed, Mar 9, 2011 at 4:32 AM, John Stultz <john.stultz at linaro.org> wrote:
> > My solution is to have a Kconfig.distro file, which is patched
> > with Distro specific policy config, such as which filesystems
> > should be enabled, networking policy, debug options, or periphrial
> > driver modules that should be enabled. Basically anything that
> > isn't hardware specific (by that I mean, part of the architecture
> > or wired on the board).
> 
> The Ubuntu configs do something similar. The config generator makes a
> 3-level config - distro, arch, board.
> 
> But this is encapsulated under the debian packaging rather than in the
> kernel source. That is why you probably haven't seen it yet. Look at
> git://git.linaro.org/ubuntu/linux-linaro-natty.git under
> debian.linaro/config.
> 
> Most kernel developers, however, don't really care about creating a
> .deb package of the kernel to test new code. They'd rather have the
> config available in the sources. So I agree that we should fix this
> problem for them. If it turns out that in fixing this problem we fix
> it for distros too, great!

Yea, I am aware of some of the approaches that distros use, usually
assembling .config fragments into a larger config at build time.

And its in part because each distro has tried to solve the same issue
out of the kernel that I'm interested in trying to solve the problem in
the kernel source at the Kconfig level.


> > From there, I add in as much of the generic Linaro config policy
> > as I could, utilizing the config files that were used to build
> > the omap3, imx51 and vexpress hardware packs.
> >
> > Since the Linaro config polciy is not unified at this point
> > (in other words, each board has totally different set of generic
> > policy options configured). I added the per target differences
> > into the board kconfig fragments.
> 
> No, it doesn't. The system they use allows for unified configs. The
> Ubuntu kernel has unified configs across 3-4 architectures.

Huh. Are you sure? Because the configs found in the hwpacks are very
different. I'll grant that the build system allows for unified config,
but I don't think the Linaro kernels are making much use of it.

omap vs vexpress being the best example of really wide differences:
o cgroup support
o bsd process accounting
o xattr support for ext3/ext4
o different preempt models
o highres timers & no_hz
etc..


> The problem is starting a new config for a new board/SoC. The current
> config system expects a full config for the board dropped into place
> and then let the tool split it out into distro/arch and board
> components. If this causes any changes to the distro/arch configs, you
> know you might have missed some options.

I'll have to take a look at this.

thanks
-john





More information about the kernel-team mailing list