linux-kbuild.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Rewriting kernel config after generation
@ 2011-12-02  5:33 Alexey Dobriyan
  2011-12-06 11:45 ` Alexey Dobriyan
  0 siblings, 1 reply; 3+ messages in thread
From: Alexey Dobriyan @ 2011-12-02  5:33 UTC (permalink / raw)
  To: mmarek, sam; +Cc: linux-kbuild, linux-kernel

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.

	Alexey

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Rewriting kernel config after generation
  2011-12-02  5:33 Rewriting kernel config after generation Alexey Dobriyan
@ 2011-12-06 11:45 ` Alexey Dobriyan
  2011-12-10 14:27   ` Michal Marek
  0 siblings, 1 reply; 3+ messages in thread
From: Alexey Dobriyan @ 2011-12-06 11:45 UTC (permalink / raw)
  To: mmarek, sam; +Cc: linux-kbuild, linux-kernel

On Fri, Dec 2, 2011 at 7:33 AM, Alexey Dobriyan <adobriyan@gmail.com> 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. :-(

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Rewriting kernel config after generation
  2011-12-06 11:45 ` Alexey Dobriyan
@ 2011-12-10 14:27   ` Michal Marek
  0 siblings, 0 replies; 3+ messages in thread
From: Michal Marek @ 2011-12-10 14:27 UTC (permalink / raw)
  To: Alexey Dobriyan; +Cc: sam, linux-kbuild, linux-kernel

On 6.12.2011 12:45, Alexey Dobriyan wrote:
> On Fri, Dec 2, 2011 at 7:33 AM, Alexey Dobriyan <adobriyan@gmail.com> 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

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-12-10 14:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-02  5:33 Rewriting kernel config after generation Alexey Dobriyan
2011-12-06 11:45 ` Alexey Dobriyan
2011-12-10 14:27   ` Michal Marek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).