Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp189312imm; Thu, 26 Jul 2018 01:35:06 -0700 (PDT) X-Google-Smtp-Source: AAOMgpeuQ5DAci3YwIZyGxbK+FCADoQUoaunV7KdMJmrjRDEtmJdRfEqHjEhQ+kZKb+qPTQNehUV X-Received: by 2002:a17:902:74c2:: with SMTP id f2-v6mr1067653plt.260.1532594106331; Thu, 26 Jul 2018 01:35:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532594106; cv=none; d=google.com; s=arc-20160816; b=aXWEBXS7uJH/vQq5czhDW+oLHzz+pEFaqyac9NeZKwtMS+/ZWemhcZBQi5gFouGi0P EUr0pb2Y1gFXMLLa8XC0OhO4629LjUT2wXgyn8wd98ypa+pRH1uWgRwrtUTMNTmMuX8e TXon6kCmLJgu7ZEvLrCFYwq+D65/jl4WhECDiRrwtGAegf6NryWNKttJZlnFAPAYqA3a VmVS+YWOel2TcebZcMn69D71DIgmmZKK8gSm+HClmJudpXWtnNjt9TvAyNWWcaSfu13i 4oeVwOraPGjvw5nRxNcvqZ6Yu79aBnMq3x7qkNsahs3sUDYlWri3d1R3KvVivCdWWkRi rg/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :arc-authentication-results; bh=VyF5GjE+ot6G5Qy6K8nBBSRHl5P6EfjciLMjxBbb+QU=; b=MTqlEiZzq+4mLxp6aYSHB0gSq4tHVmpPmUSyUgpO1Ceqtt+SXue9AqAlvxtCgRRA9x p5/z5s0NqmizOSGZVrrh5fgVcXMC/+a9/p/ELJ1SKl4VQQKafP+kM1OiA4xfgk4oxFh5 wLYsDFJsv7JEXfzk5Q9F7fI+0cFBKWEhJjsMwylac5tFy1+8Pj1Y2yXNqVX+YTLACR2M ZpUU8LPSGZS2Za84phe0KlCLLn2uL52XX1oFPoDC0k834yA4xAuf/b97gtLRm6p+Rh5s ip9Tl3fSYYIkIKshyuwW1BHTiN+q/RE0A86rgrVnsXm8ty2BBHgqatoKdrVvkI9jSm5S ty5w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 188-v6si812861pfg.154.2018.07.26.01.34.51; Thu, 26 Jul 2018 01:35:06 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728990AbeGZJtr convert rfc822-to-8bit (ORCPT + 99 others); Thu, 26 Jul 2018 05:49:47 -0400 Received: from mx2.suse.de ([195.135.220.15]:33326 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727847AbeGZJtr (ORCPT ); Thu, 26 Jul 2018 05:49:47 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 9DC05AEB1; Thu, 26 Jul 2018 08:33:58 +0000 (UTC) Date: Thu, 26 Jul 2018 10:33:54 +0200 From: Michal =?UTF-8?B?U3VjaMOhbmVr?= To: Masahiro Yamada Cc: Linux Kernel Mailing List , Takashi Iwai , Andreas Schwab , Michal Kubecek , Michal Marek , Jonathan Corbet , Yoshinori Sato , Rich Felker , "David S. Miller" , Jeff Dike , Richard Weinberger , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , X86 ML , Kees Cook , Philippe Ombredanne , Greg Kroah-Hartman , Ulf Magnusson , Jeff Mahoney , "Peter Zijlstra," , Mathieu Desnoyers , Frederic Weisbecker , Randy Dunlap , Dominik Brodowski , Nicholas Piggin , Linux Kbuild mailing list , "open list:DOCUMENTATION" , Linux-sh list , sparclinux , linux-um@lists.infradead.org, jslaby@suse.com Subject: Re: due to kconfig changes kernel config file is no longer sufficient for configuring the kernel Message-ID: <20180726103354.111f2d61@naga.suse.cz> In-Reply-To: <20180628111623.3807fe9b@naga.suse.cz> References: <20180627143705.5a1fed1c@kitsune.suse.cz> <20180628111623.3807fe9b@naga.suse.cz> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.32; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 28 Jun 2018 11:16:23 +0200 Michal Suchánek wrote: > On Wed, 27 Jun 2018 23:07:21 +0900 > Masahiro Yamada wrote: > > > Hi. > > > > > > 2018-06-27 21:37 GMT+09:00 Michal Suchánek : > > > Hello, > > > > > > in the x86 Kconfig we have this: > > > > > > # Select 32 or 64 bit > > > 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 > > > > > > Since commit 104daea149c4 ("kconfig: reference environment > > > variables directly and remove 'option env='") the value of ARCH > > > is not saved in the kernel config. > > > > I think this commit is unrelated. It was just a syntax change. > > This does not look like syntax only change to me: > > diff --git a/init/Kconfig b/init/Kconfig > index 15aae32e0719..1217fc62ca61 100644 > --- a/init/Kconfig > +++ b/init/Kconfig > @@ -1,20 +1,12 @@ > -config ARCH > - string > - option env="ARCH" > - > -config KERNELVERSION > - string > - option env="KERNELVERSION" > - > > > > > Unless I am missing something, > > we have never saved ARCH in the .config in the past. > > There was a config symbol defined for it before the commit removed it. nonetheless its value was not saved anyway. > > > > > > > > Since commit f467c5640c29 ("kconfig: only write '# > > > CONFIG_FOO is not set' for visible symbols") the value of 64BIT is > > > not saved if the ARCH is set i386 or x86_64 because the symbol is > > > not visible. > > > > This is correct. > > > > It was discussed a few weeks ago. > > > > https://lkml.org/lkml/2018/6/5/847 And it went nowhere. Anyway, the observed issue with CONFIG_64BIT on x86 is the tip of a larger problem which was unnoticed for ages. The .config simply does not contain the whole kernel configuration. ie. make oldconfig (and make syncconfig) is *not* expected to just work. It used to work just by luck until f467c5640c29 ("kconfig: only write '# CONFIG_FOO is not set' for visible symbols") finally exposed the problem. So is .config supposed to contain the kernel configuration or is it just some byproduct of the kernel build which is meaningless outside of your build environment (the object tree, shell environment, etc). Thanks Michal