Re: Rewriting kernel config after generation

From: Michal Marek
Date: Sat Dec 10 2011 - 09:27:16 EST


On 6.12.2011 12:45, Alexey Dobriyan wrote:
> On Fri, Dec 2, 2011 at 7:33 AM, Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
>> I'm trying to add compiling with -march=native to the kernel.
>> The problem is that then some config options become discoverable at
>> the beginning of the compilation. For example,
>> CONFIG_X86_L1_CACHE_SHIFT=6 can be derived from "--param l1-cache-line-size=64".
>> I suspect this is no-go, because all the dependency logic must be
>> duplicated somewhere else (in the march=native script) for the above
>> to work.
>>
>> Is there any cleaner way I'm missing?
>>
>> In theory, such script could even turn off CONFIG_CPU_SUP_AMD
>> if it detects Intel CPU.
>
> Hrph, this is harder than it looks because "silentoldconfig" is done at
> the beginning rewriting whatever changes done to .config by hand. :-(

X86_L1_CACHE_SHIFT has no prompt, so it cannot be modified by the user.
You would need to add a prompt if you want to modify it, e.g.

config X86_L1_CACHE_SHIFT
int
prompt "..." if X86_MARCH_NATIVE

But I wonder why is this needed. To build for the native cpu, you only
need to detect what cpu you are running and select the matching
processor family. The x86 Kconfig/Makefile will then take care of
setting the right kconfig options and the right -march= parameter for gcc.

Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/