From patchwork Tue May 8 12:12:26 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 10386053 X-Patchwork-Delegate: bhelgaas@google.com 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 6BA166053E for ; Tue, 8 May 2018 12:12:50 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5970528D81 for ; Tue, 8 May 2018 12:12:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4DB1D28D8A; Tue, 8 May 2018 12:12:50 +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=-7.9 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=unavailable 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 C3BCC28D89 for ; Tue, 8 May 2018 12:12:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754383AbeEHMMg (ORCPT ); Tue, 8 May 2018 08:12:36 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:57212 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752088AbeEHMMe (ORCPT ); Tue, 8 May 2018 08:12:34 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 82364EB6E5; Tue, 8 May 2018 12:12:33 +0000 (UTC) Received: from localhost (ovpn-8-16.pek2.redhat.com [10.72.8.16]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0B5D8AFD4E; Tue, 8 May 2018 12:12:30 +0000 (UTC) Date: Tue, 8 May 2018 20:12:26 +0800 From: Baoquan He To: kbuild test robot Cc: kbuild-all@01.org, linux-kernel@vger.kernel.org, akpm@linux-foundation.org, robh+dt@kernel.org, dan.j.williams@intel.com, nicolas.pitre@linaro.org, josh@joshtriplett.org, fengguang.wu@intel.com, bp@suse.de, patrik.r.jakobsson@gmail.com, airlied@linux.ie, kys@microsoft.com, haiyangz@microsoft.com, sthemmin@microsoft.com, dmitry.torokhov@gmail.com, frowand.list@gmail.com, keith.busch@intel.com, jonathan.derrick@intel.com, lorenzo.pieralisi@arm.com, bhelgaas@google.com, tglx@linutronix.de, brijesh.singh@amd.com, jglisse@redhat.com, thomas.lendacky@amd.com, gregkh@linuxfoundation.org, baiyaowei@cmss.chinamobile.com, richard.weiyang@gmail.com, devel@linuxdriverproject.org, linux-input@vger.kernel.org, linux-nvdimm@lists.01.org, devicetree@vger.kernel.org, linux-pci@vger.kernel.org, ebiederm@xmission.com, vgoyal@redhat.com, dyoung@redhat.com, yinghai@kernel.org, kexec@lists.infradead.org, monstr@monstr.eu, davem@davemloft.net, chris@zankel.net, jcmvbkbc@gmail.com, gustavo@padovan.org, maarten.lankhorst@linux.intel.com, seanpaul@chromium.org, linux-parisc@vger.kernel.org Subject: Re: [PATCH v4 1/3] resource: Use list_head to link sibling resource Message-ID: <20180508121226.GJ30581@MiWiFi-R3L-srv> References: <20180507063224.24229-2-bhe@redhat.com> <201805072210.H1bsHs9Y%fengguang.wu@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <201805072210.H1bsHs9Y%fengguang.wu@intel.com> User-Agent: Mutt/1.9.1 (2017-09-22) X-Scanned-By: MIMEDefang 2.79 on 10.11.54.5 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.1]); Tue, 08 May 2018 12:12:33 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.1]); Tue, 08 May 2018 12:12:33 +0000 (UTC) for IP:'10.11.54.5' DOMAIN:'int-mx05.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'bhe@redhat.com' RCPT:'' Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On 05/07/18 at 11:50pm, kbuild test robot wrote: > Hi Baoquan, > > I love your patch! Yet something to improve: > > [auto build test ERROR on linus/master] > [also build test ERROR on v4.17-rc4 next-20180504] > [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] > > url: https://github.com/0day-ci/linux/commits/Baoquan-He/resource-Use-list_head-to-link-sibling-resource/20180507-144345 > config: arm-allmodconfig (attached as .config) > compiler: arm-linux-gnueabi-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 > # save the attached .config to linux build tree > make.cross ARCH=arm > > All errors (new ones prefixed by >>): Thanks, below patch can fix it: > > arch/arm/plat-samsung/pm-check.c: In function 's3c_pm_run_res': > >> arch/arm/plat-samsung/pm-check.c:49:18: error: invalid operands to binary != (have 'struct list_head' and 'void *') > if (ptr->child != NULL) > ~~~~~~~~~~ ^~ > >> arch/arm/plat-samsung/pm-check.c:50:19: error: incompatible type for argument 1 of 's3c_pm_run_res' > s3c_pm_run_res(ptr->child, fn, arg); > ^~~ > arch/arm/plat-samsung/pm-check.c:46:13: note: expected 'struct resource *' but argument is of type 'struct list_head' > static void s3c_pm_run_res(struct resource *ptr, run_fn_t fn, u32 *arg) > ^~~~~~~~~~~~~~ > >> arch/arm/plat-samsung/pm-check.c:60:7: error: incompatible types when assigning to type 'struct resource *' from type 'struct list_head' > ptr = ptr->sibling; > ^ > > vim +49 arch/arm/plat-samsung/pm-check.c > > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 45 > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 46 static void s3c_pm_run_res(struct resource *ptr, run_fn_t fn, u32 *arg) > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 47 { > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 48 while (ptr != NULL) { > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 @49 if (ptr->child != NULL) > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 @50 s3c_pm_run_res(ptr->child, fn, arg); > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 51 > 05fee7cf arch/arm/plat-samsung/pm-check.c Toshi Kani 2016-01-26 52 if ((ptr->flags & IORESOURCE_SYSTEM_RAM) > 05fee7cf arch/arm/plat-samsung/pm-check.c Toshi Kani 2016-01-26 53 == IORESOURCE_SYSTEM_RAM) { > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 54 S3C_PMDBG("Found system RAM at %08lx..%08lx\n", > 840eeeb8 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 55 (unsigned long)ptr->start, > 840eeeb8 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 56 (unsigned long)ptr->end); > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 57 arg = (fn)(ptr, arg); > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 58 } > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 59 > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 @60 ptr = ptr->sibling; > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 61 } > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 62 } > 549c7e33 arch/arm/plat-s3c/pm-check.c Ben Dooks 2008-12-12 63 > > :::::: The code at line 49 was first introduced by commit > :::::: 549c7e33aeb9bfe441ecf68639d2227bb90978e7 [ARM] S3C: Split the resume memory check code from pm.c > > :::::: TO: Ben Dooks > :::::: CC: Ben Dooks > > --- > 0-DAY kernel test infrastructure Open Source Technology Center > https://lists.01.org/pipermail/kbuild-all Intel Corporation diff --git a/arch/arm/plat-samsung/pm-check.c b/arch/arm/plat-samsung/pm-check.c index cd2c02c68bc3..5494355b1c49 100644 --- a/arch/arm/plat-samsung/pm-check.c +++ b/arch/arm/plat-samsung/pm-check.c @@ -46,8 +46,8 @@ typedef u32 *(run_fn_t)(struct resource *ptr, u32 *arg); static void s3c_pm_run_res(struct resource *ptr, run_fn_t fn, u32 *arg) { while (ptr != NULL) { - if (ptr->child != NULL) - s3c_pm_run_res(ptr->child, fn, arg); + if (!list_empty(&ptr->child)) + s3c_pm_run_res(resource_first_child(&ptr->child), fn, arg); if ((ptr->flags & IORESOURCE_SYSTEM_RAM) == IORESOURCE_SYSTEM_RAM) { @@ -57,7 +57,7 @@ static void s3c_pm_run_res(struct resource *ptr, run_fn_t fn, u32 *arg) arg = (fn)(ptr, arg); } - ptr = ptr->sibling; + ptr = resource_sibling(ptr); } }