Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp1026313ybb; Wed, 8 Apr 2020 14:57:48 -0700 (PDT) X-Google-Smtp-Source: APiQypLa/rxOdWDBavK+neR49NQPHjeylgG304IokA+o7Htk0LefBq7a0cOy5O8Kozv4Tkk9beoC X-Received: by 2002:a4a:940e:: with SMTP id h14mr7710791ooi.26.1586383067887; Wed, 08 Apr 2020 14:57:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586383067; cv=none; d=google.com; s=arc-20160816; b=cHNErKPCptCWwfLYNjM7tpo2r9aSVBZbRpwQ0z56a5yVfJuiPO0mdkIqlZ13sw4dLB HyH/IfnKGoxlYe13KMJre0WctF3SzegZAHHFOMss1L1P/YKA7x/2ooMUA3Xw1v0LKsRa smmqjjtsxMlBrx8cZcK9T3yXJBv1YKSNk7ty8dluaav/4gzKkS38KPy/BzE0ThDMivok Niyo192NqzkFJC755lUi+LoxNiTDsMWziA9V5kdpMMqt+MBvE/r4kFwQQwsOZm2jT47Y VBOyNQGI15YTYNKqdUXLbJFCom5ZZebpHWEjbPuOk9rJbvy7bUDhUGgor7lvu9UFMwSx RqLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version; bh=PalVlXSM4O/Agdhti6rHHQXTHMNteiPiwEnUf4YdsIU=; b=f17aZ7P+21h+zxg25xNERiI6z1xk8ZrqUNYQfddq5JeS9jGasNbaeSxber1Awkcmgk sjBpmM0kppWx8j9C3/Q5DXkzzXbBYeRFWuRslT1nRmPUfHVAH+tGmxxmVj3cHPudsBdL zOmM/rxsm+JbPEjimpIqI6W7sGRM56vpq8+Wn2U+j+Rej1p999lCZMcSqMyNPbBgysSf cK3wEDZ3DU4r+pJZepDNxQ0dK/F5q01/BsfgJWWkM2KReK+U7Gn7Ds18+Ir0n03sHxly TbzsOaN9inDyt0lNeC8ISyF3uNzaaHIKILjd1WG4Tv5nk6Lr1E50l9yZ+vLBJ2XfwwIZ omRg== 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 i14si2912027oov.24.2020.04.08.14.57.35; Wed, 08 Apr 2020 14:57:47 -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 S1729057AbgDHUuI (ORCPT + 99 others); Wed, 8 Apr 2020 16:50:08 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:54063 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727769AbgDHUuI (ORCPT ); Wed, 8 Apr 2020 16:50:08 -0400 Received: from mail-qt1-f178.google.com ([209.85.160.178]) by mrelayeu.kundenserver.de (mreue011 [212.227.15.129]) with ESMTPSA (Nemesis) id 1MRn0U-1jjxYa1Qni-00TASI; Wed, 08 Apr 2020 22:50:06 +0200 Received: by mail-qt1-f178.google.com with SMTP id z90so755393qtd.10; Wed, 08 Apr 2020 13:50:05 -0700 (PDT) X-Gm-Message-State: AGi0PuYSte0JCTfSv334dYLgt146dhcHbnZFs1fjjw/q07PHpKtg65KW TvjKchHvC767o4ppNWAkIV472zaYw57qMUMU/24= X-Received: by 2002:ac8:12c2:: with SMTP id b2mr1560498qtj.7.1586379004961; Wed, 08 Apr 2020 13:50:04 -0700 (PDT) MIME-Version: 1.0 References: <20200408202711.1198966-1-arnd@arndb.de> In-Reply-To: From: Arnd Bergmann Date: Wed, 8 Apr 2020 22:49:48 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFC 0/6] Regressions for "imply" behavior change To: Nicolas Pitre Cc: "linux-kernel@vger.kernel.org" , Masahiro Yamada , Andrzej Hajda , Neil Armstrong , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , David Airlie , Daniel Vetter , Kieran Bingham , "David S. Miller" , Saeed Mahameed , Leon Romanovsky , dri-devel , Linux-Renesas , Networking , linux-rdma Content-Type: text/plain; charset="UTF-8" X-Provags-ID: V03:K1:Kc+e7gOBMBy4fgliV8+wTzDtBqkiekso8uwFk7zpl+8KOTV8+lX Ap1gmqRHFqlreu2JMKQibxZMLFg41DngvaRlbUp6bQ6HqHzNitKK6BAF17eRnVOzM+83oLR kdeMOO12t6SMt3u23iWu+r2JcMbLG35L2VIQNh1nfC7TKStTWi7e0AGrUEbXygGI1vJ5uPX 4/AwJwq+3OpoQaCQiU3SA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:WPSVnHxAXP4=:WKy5dFAMgXMpgCWnVu65UZ QteWtKeojy14W0LmkgFTYQNlRL3eFXMl5aNJfxb/6OduNcFchA0paC7RAF/5V9qt/6yb+1rzi bHhU5mgLaOtgXHe+5YxLh4+XEOGHcuyVFZ1EgXhAro4wpzkTq5WZBtkWAJ2PzGw03LAXyjcJc cU944pFKMJzVuDc610M9KLSRtCOo2IftlKgcbUDdo+cOSBKor+r1cuAJkaJ1x3cFM9coDS6Jq jNZIz8EY3dx8nC6+9po6QN2vfIATPB9RO5e2fKeG0n3uWb5KWjV8yGS5jxxZx6/+8P/P32t2J M9tQmsUv5v+xdkrGrhmybW6qj+5g4ZFq4gKur5GE8AAhttBuQ2W00H2ZM6H+v8wf9SlyB6r/s g8VhW9DBF+O66BPTw4KUTKJ7AxlcSEgQ57+3HqgJFgVJllXM9+FlHIgVy3MUeZB+nQ+1475cK ZPYtLUnMbbRL9v55b+U/u7OOVAv9VxGLhild8wmli/zy+RU9SR2yMriJQ7iBdZbimMS+o75Uk oXA0npHY/vMi5T3LGN3OvH39aPng3rFMX/MtT7RJ8OjoM3qAmtkdF45vTCOOv0gFTG/rwS0J+ HYX6fgc0NRfHWfxNgscRPgmzOv8CTbkUhex8KVxGLSDmt9Bwu5dHuQ1JSYO1zWP7abKxETagu paICl+4hQhFkZMyaShonq+2mkwRrPMxpynSZ2XTTypcip+noEfaVfTclpHkZjf9y20JrwAAy+ tIrvDlgfM+zweorIIew+RnF6pGfndYFAoidP+I7letj/8BWi91/7mVJ2VmDmBFEkLAPWlIegC EMQYXagKpFV0ujNNzMFDCVfVafkkcWo78uIHnbIow74iR9ZtxQ= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 8, 2020 at 10:38 PM Nicolas Pitre wrote: > On Wed, 8 Apr 2020, Arnd Bergmann wrote: > > I have created workarounds for the Kconfig files, which now stop using > > imply and do something else in each case. I don't know whether there was > > a bug in the kconfig changes that has led to allowing configurations that > > were not meant to be legal even with the new semantics, or if the Kconfig > > files have simply become incorrect now and the tool works as expected. > > In most cases it is the code that has to be fixed. It typically does: > > if (IS_ENABLED(CONFIG_FOO)) > foo_init(); > > Where it should rather do: > > if (IS_REACHABLE(CONFIG_FOO)) > foo_init(); > > A couple of such patches have been produced and queued in their > respective trees already. I try to use IS_REACHABLE() only as a last resort, as it tends to confuse users when a subsystem is built as a module and already loaded but something relying on that subsystem does not use it. In the six patches I made, I had to use IS_REACHABLE() once, for the others I tended to use a Kconfig dependency like 'depends on FOO || FOO=n' which avoids the case that IS_REACHABLE() works around badly. I did come up with the IS_REACHABLE() macro originally, but that doesn't mean I think it's a good idea to use it liberally ;-) Arnd