2005-03-09 14:05:19

by Gustav Lidberg

[permalink] [raw]
Subject: make menuconfig creates erronous config for 386

Hi

There is a bug in "make menuconfig". If one chooses 386 or 486 for cpu
type, CONFIG_X86_TSC=y is set in .config. This creates a kernel that is
unbootable on 386. Testing shows that it worked in 2.4.19, but is broken
from 2.4.20 onwards. Someone should definetely look into this.
(I'm not subscribed to lkml)


/Gustav Lidberg





2005-03-09 18:09:33

by Marcelo Tosatti

[permalink] [raw]
Subject: Re: make menuconfig creates erronous config for 386


Hi,

On Wed, Mar 09, 2005 at 03:15:19PM +0100, Gustav Lidberg wrote:
> Hi
>
> There is a bug in "make menuconfig". If one chooses 386 or 486 for cpu
> type, CONFIG_X86_TSC=y is set in .config. This creates a kernel that is
> unbootable on 386. Testing shows that it worked in 2.4.19, but is broken
> from 2.4.20 onwards. Someone should definetely look into this.
> (I'm not subscribed to lkml)

Quoting Mikael Pettersson, from
http://marc.theaimsgroup.com/?l=linux-kernel&m=109986177309630&w=2

"Do a 'make oldconfig' after switching CPU type from a
TSC-capable one to a TSC-less one in 2.4 kernels. There
is a known bug in the old configuration system where it
can leave derived options in an inconsistent state after
a single round of option changes. CONFIG_X86_TSC is the
prime example of this. Doing a second configuration round
allows the derived options to reach a fixpoint."

Note that arch/i386/defconfig contains CONFIG_X86_TSC=y.

Michael, Mikael, what are the possibilities for fixing this
Configure limitation?

In the meantime, I wonder if arch/i386/defconfig should be
changed to contain "CONFIG_X86_TSC=n" instead of "=y" to make
life easier for 386/486 users who use "make menuconfig" without
pre-existing .config files.

This should have been fixed ages ago. :(