2010-08-12 23:39:34

by Joel Becker

[permalink] [raw]
Subject: Cloning arch-independant KConfig

Sam,
I guess this is either a feature request or just wondering
whether KConfig supports this idea.
Often I have a wonderful minimal .config that builds a test
kernel. It only compiles the things I want in my kernel and modules,
nothing more. Usually I start from a distro kernel and then keep
turning things off until I reach some minimum.
However, when I get a new machine of a different architecture, I
can't bring that work forward. If I take this .config to that arch, the
oldconfig just breaks. I don't get good defaults for the arch-specific
stuff. Conversely, if I start from a distro .config for the new arch, I
have to repeat all the whittle-down work.
Is there any way to "extract" the non-arch-specific config
values? Essentially, all the "use USB, build ext3, give me these
network cards" fields should be kept, but I want to start from a default
architecture config.

Joel

--

"Friends may come and go, but enemies accumulate."
- Thomas Jones

Joel Becker
Consulting Software Developer
Oracle
E-mail: [email protected]
Phone: (650) 506-8127


2010-08-13 01:20:56

by Sam Ravnborg

[permalink] [raw]
Subject: Re: Cloning arch-independant KConfig

On Thu, Aug 12, 2010 at 04:38:37PM -0700, Joel Becker wrote:
> Sam,
> I guess this is either a feature request or just wondering
> whether KConfig supports this idea.
> Often I have a wonderful minimal .config that builds a test
> kernel. It only compiles the things I want in my kernel and modules,
> nothing more. Usually I start from a distro kernel and then keep
> turning things off until I reach some minimum.
> However, when I get a new machine of a different architecture, I
> can't bring that work forward. If I take this .config to that arch, the
> oldconfig just breaks. I don't get good defaults for the arch-specific
> stuff. Conversely, if I start from a distro .config for the new arch, I
> have to repeat all the whittle-down work.
> Is there any way to "extract" the non-arch-specific config
> values? Essentially, all the "use USB, build ext3, give me these
> network cards" fields should be kept, but I want to start from a default
> architecture config.

Today there are a few ways you can do so already.
Say that you have saved away the known good one as "good", which is
a direct copy of your .config.

Then you can do for example:
KCONFIG_ALLCONFIG=good make alldefconfig

This will produce a config wich is almost equal to what you had before,
and with defaults for all new stuff.
I tested it where I used a sparc defconfig as input to a i386
config and it just worked.

Another possibility:
If you already have configured your kernel, but want to use
"good" but keep the settings for all the new stuff.
Then you can do:

cat .config good > new
mv new .config
make menuconfig

This will trigger a lot of override warnings - which you just ignore.
Resulting config is then mostly from "good".

We do not have a way to say "copy only non-arch specific settings".
So I hope the above is OK.

Sam

2010-08-13 01:31:31

by Joel Becker

[permalink] [raw]
Subject: Re: Cloning arch-independant KConfig

On Fri, Aug 13, 2010 at 03:20:52AM +0200, Sam Ravnborg wrote:
> Today there are a few ways you can do so already.
> Say that you have saved away the known good one as "good", which is
> a direct copy of your .config.
>
> Then you can do for example:
> KCONFIG_ALLCONFIG=good make alldefconfig
>
> This will produce a config wich is almost equal to what you had before,
> and with defaults for all new stuff.
> I tested it where I used a sparc defconfig as input to a i386
> config and it just worked.

That seems pretty reasonable.

> cat .config good > new
> mv new .config
> make menuconfig
>
> This will trigger a lot of override warnings - which you just ignore.
> Resulting config is then mostly from "good".

The problem with this, which I've definitely done before, is I
never know what paths in menuconfig to look down. The alldefconfig
choice seems saner because it provides a dirt-simple CPU setup.

Joel

--

"Can any of you seriously say the Bill of Rights could get through
Congress today? It wouldn't even get out of committee."
- F. Lee Bailey

Joel Becker
Consulting Software Developer
Oracle
E-mail: [email protected]
Phone: (650) 506-8127