Re: [PATCH] x86/config: Make the x86 defconfigs a bit more usable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Nathan Chancellor <nathan@xxxxxxxxxx> wrote:

> On Sun, Mar 27, 2022 at 09:03:14PM +0200, Ingo Molnar wrote:
> > Yeah, good catch! ...
> > 
> > I use defconfigs by explicitly adding in the architecture:
> > 
> >   kepler:~/tip> make ARCH=i386 defconfig
> > 
> >   kepler:~/tip> kconfig-arch
> >   i386
> > 
> > ... so never I noticed this bug.
> 
> Ah, good point!
> 
> > I fixed this in the latest version (attached).
> > 
> > Arguably 'make ARCH=i386 savedefconfig' should preserve this, so that 
> > refreshing defconfigs on bi-arch architectures is idempotent, but that's no 
> > excuse to regress the existing defconfig behavior.
> 
> Hmmm, I thought that it would, but I think the behavior of savedefconfig
> is actually correct with regards to how it handles CONFIG_64BIT in the
> presence of an explicit ARCH value, based on how CONFIG_64BIT is
> defined:
> 
> config 64BIT
> 	bool "64-bit kernel" if "$(ARCH)" = "x86"
> 	default "$(ARCH)" != "i386"
> 	help
> 	  Say yes to build a 64-bit kernel - formerly known as x86_64
> 	  Say no to build a 32-bit kernel - formerly known as i386
> 
> As the default is no when ARCH == i386 and there is no prompt in that
> situation, "# CONFIG_64BIT is not set" gets dropped, as that is the
> default. Using savedefconfig without the ARCH variable would do the
> right thing.
> 
> I tried playing around with these Kconfig symbols to see if I could get
> something that would work for savedefconfig with or without ARCH, but I
> could not really come up with anything. I did not try super hard though,
> it might still be possible.

Unfortunately, even without the ARCH=i386 'make savedefconfig' doesn't seem 
to be doing the right thing & is dropping the '# CONFIG_64BIT is not set' 
line:

 kepler:~/tip> make ARCH=i386 defconfig
 *** Default configuration is based on 'i386_defconfig'
 #
 # configuration written to .config
 #
 kepler:~/tip> make savedefconfig
 kepler:~/tip> diff -up arch/x86/configs/i386_defconfig defconfig
 --- arch/x86/configs/i386_defconfig	2022-09-02 10:45:43.117430882 +0200
 +++ defconfig	2022-09-02 10:46:56.663864901 +0200
 @@ -282,4 +282,3 @@ CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
  CONFIG_EARLY_PRINTK_DBGP=y
  CONFIG_DEBUG_BOOT_PARAMS=y
  CONFIG_UNWINDER_FRAME_POINTER=y
 -# CONFIG_64BIT is not set
 kepler:~/tip> 

This is annoying in that every time I modify the i386 defconfig and use 
'make savedefconfig', I have to manually revert that change ...

This reduces the usability of 'make savedefconfig' quite a bit.

Maybe Masahiro-san can tell me how I'm doing this wrong?

Thanks,

	Ingo



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux