From patchwork Thu Mar 8 21:50:37 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Darren Hart X-Patchwork-Id: 10269275 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 5A9A9602C8 for ; Thu, 8 Mar 2018 21:50:43 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 497FB29423 for ; Thu, 8 Mar 2018 21:50:43 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3DFFE298B0; Thu, 8 Mar 2018 21:50:43 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9519D297B8 for ; Thu, 8 Mar 2018 21:50:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750787AbeCHVum (ORCPT ); Thu, 8 Mar 2018 16:50:42 -0500 Received: from bombadil.infradead.org ([198.137.202.133]:59640 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750713AbeCHVul (ORCPT ); Thu, 8 Mar 2018 16:50:41 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=5KbatDs1iNBdBzptSl/jeI2L3UhGp8y+TRchjVyhzXc=; b=K0xf1eaUhE4WV2VsKLA3ZwUEd X23BfXEgBZ7IdpYCqpT3voCE45+lcwwUPBJDdhFNIHo0M/xv1SvS7aabuVEy6IEz6UB1e4h5OUtya 90EPw5Wg51Petp8JE/4qz8FQo5U5ldZOrkMALpt96xO59FHTSbhNAhyRycVihQf4ogYRLkc9IIPo7 srzuBRTsw3vkr6sRUoiaRR3mYCPMblHmVthhWvjI3CxS7oaZZVwrmmqQwUa4RMB74DGkuK2gNTquT XSVu8SBsn7/5rKzTllld6a6XLm4cXvwLHPNL+6+9nvr2ivrMlEMGCfqIPTsGzvmbWul3uAqJV46BG xwODcMjFw==; Received: from dvhart by bombadil.infradead.org with local (Exim 4.89 #1 (Red Hat Linux)) id 1eu3Qu-0003a7-8Y; Thu, 08 Mar 2018 21:50:40 +0000 Date: Thu, 8 Mar 2018 13:50:37 -0800 From: Darren Hart To: kbuild test robot Cc: kbuild-all@01.org, platform-driver-x86@vger.kernel.org, Andy Shevchenko , mario.limonciello@dell.com Subject: Re: [platform-drivers-x86:testing 6/6] drivers/platform/x86/Kconfig:128:error: recursive dependency detected! Message-ID: <20180308215037.GF11045@localhost.localdomain> References: <201803090204.Ob08WTZI%fengguang.wu@intel.com> <20180308200311.GE11045@localhost.localdomain> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20180308200311.GE11045@localhost.localdomain> User-Agent: Mutt/1.9.1 (2017-09-22) Sender: platform-driver-x86-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Thu, Mar 08, 2018 at 12:03:11PM -0800, Darren Hart wrote: > On Fri, Mar 09, 2018 at 02:45:05AM +0800, kbuild test robot wrote: > > tree: git://git.infradead.org/users/dvhart/linux-platform-drivers-x86.git testing > > head: 1fd7ad4be77160c4a6c6deca62c3b9c728836b7d > > commit: 1fd7ad4be77160c4a6c6deca62c3b9c728836b7d [6/6] platform/x86: dell-smbios: Resolve dependency error on DCDBAS > > config: sh-allmodconfig (attached as .config) > > compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 > > reproduce: > > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > > chmod +x ~/bin/make.cross > > git checkout 1fd7ad4be77160c4a6c6deca62c3b9c728836b7d > > # save the attached .config to linux build tree > > make.cross ARCH=sh > > > > All errors (new ones prefixed by >>): > > > > >> drivers/platform/x86/Kconfig:128:error: recursive dependency detected! > > >> drivers/platform/x86/Kconfig:128: symbol DELL_SMBIOS_USING_DCDBAS is selected by DELL_SMBIOS_SMM > > >> drivers/platform/x86/Kconfig:145: symbol DELL_SMBIOS_SMM depends on DELL_SMBIOS > > >> drivers/platform/x86/Kconfig:114: symbol DELL_SMBIOS depends on DELL_SMBIOS_USING_DCDBAS > > For a resolution refer to Documentation/kbuild/kconfig-language.txt > > subsection "Kconfig recursive dependency limitations" > > > > vim +128 drivers/platform/x86/Kconfig > > Well, apparently this needs more work. I don't know why I didn't see this > recursive error with this version of my patch. I'll see if there is anything I > can do... > > Andy, this means we'll probably have to break testing and roll this back. OK, I spent some time mapping this out and... oi, what a mess. Greg KH is here at OSLS and I worked through this with him - he suggested just simplifying this by forcing DELL_SMBIOS to be <= DCDBAS if DCDBAS is enabled. I've updated my patch in testing to reflect this, and force pushed. Hopefully nobody but 0-day is impacted. This is bad form, but sending something to Linus with Kconfig errors would be worse. From cc69c88fbeb915447b87e5179378d899d1f61554 Mon Sep 17 00:00:00 2001 Message-Id: From: "Darren Hart (VMware)" Date: Tue, 6 Mar 2018 18:01:04 -0800 Subject: [PATCH] platform/x86: dell-smbios: Resolve dependency error on DCDBAS When the DELL_SMBIOS_SMM backend is enabled, the DELL_SMBIOS symbol depends on DELL_DCDBAS, and we must avoid the situation where DELL_SMBIOS=y and DCDBAS=m. Adding the conditional dependency to DELL_SMBIOS such as: depends !DELL_SMBIOS_SMM || (DCDBAS || DCDBAS=n) results in the Kconfig tooling complaining about a circular dependency, although it appears to work in practice. Avoid the errors by simplifying the dependency and forcing DELL_SMBIOS to be <= DCDBAS if DCDBAS is enabled (thanks to Greg KH for the suggestion). Cc: Mario.Limonciello@dell.com Signed-off-by: Darren Hart (VMware) --- drivers/platform/x86/Kconfig | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index 022c837..e55b008 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -105,8 +105,14 @@ config ASUS_LAPTOP If you have an ACPI-compatible ASUS laptop, say Y or M here. +# +# If the DELL_SMBIOS_SMM feature is enabled, the DELL_SMBIOS driver +# becomes dependent on the DCDBAS driver. The "depends" line prevents a +# configuration where DELL_SMBIOS=y while DCDBAS=m. +# config DELL_SMBIOS tristate "Dell SMBIOS driver" + depends on DCDBAS || DCDBAS=n ---help--- This provides support for the Dell SMBIOS calling interface. If you have a Dell computer you should enable this option.