Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp1496366ybt; Thu, 18 Jun 2020 10:01:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJymYHzWKtkhn1vOoBaWcGTtBzPvRq32hggfQsfIe2SKHueTwDQxxJu8uoDH2ILZ8zcIGU+Q X-Received: by 2002:a17:906:aad8:: with SMTP id kt24mr4630443ejb.527.1592499701486; Thu, 18 Jun 2020 10:01:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592499701; cv=none; d=google.com; s=arc-20160816; b=ygPFNUbgSovNC/o7vWNYhymwcuD/fbrrzs2nvbPrt6W1RsUqCjJsNaQ/J6FsO3a0v5 f/K1Ur8sxTksVWSLr2jkcCoCsHcryMeW9S5IHTRWqydsyuXavGQ68LxCZRW2rgmArJ7g MsF3o4zFi9cHr/w1mlnsaXAx3xM1qZX8cw5V7xb4chpl+E0O9DsVkICx4W24sbE3wGyo 0MW/GYw6PnJTYJXhmcy21GvoHZh6ZqfzKh/h7B0F2mIXUmgyBDh+BxYEBtepo8lGnWQd sTeZP4R7dSHCEIepRyxStguD6ujHSwFZ3QLhTCY6X3U0uOX9WFkSL1zJaBLCstebejPe 9Z2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:ironport-sdr:ironport-sdr; bh=favZV3a5NDBnlKKBwBelrW00WJHCjMEyqcOLOO1RDDQ=; b=EwN2vY2sQVy2I7R1acoE3797e0Hb9woY35/5JKtZ/S/4AM2t65Phb+v51Ff5KhpHFA MsXceCZmkMa9kZBrLdRZF7/KMWGhKV8vQTwARTkJj9HcgJhbQOAFm1lwE0JCJXcfZeye Z6RMYB6J2w7np9VpTDceuWCDn3iRvRWJSEtio8Q/FHJpGhwYaKdHcJ+7yBbyqXMAAVIy 7wMOOa27NtG8MJnTf9zlhUe+hKWj0vdvYepLU/9Cau5lrjJsYISj97JPYk+xs7IYhaCS pOwGFsLFijSTnmzFb9i2FXwgIPe+VPdvAxYkKzcijyqyp95ZO6MAqq37jobTccnuFj0d k0Kw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o23si2205657edr.538.2020.06.18.10.01.17; Thu, 18 Jun 2020 10:01:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731931AbgFRQ7B (ORCPT + 99 others); Thu, 18 Jun 2020 12:59:01 -0400 Received: from mga07.intel.com ([134.134.136.100]:20642 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728523AbgFRQ67 (ORCPT ); Thu, 18 Jun 2020 12:58:59 -0400 IronPort-SDR: 4dXZA3E8Js7OiWXenAjLiQb9cb4W8xUVepWfQEYOgD0F1YeoyIOqyKlDg8Ju0jGbmU8fc/noX4 sH+ytAsRZjMA== X-IronPort-AV: E=McAfee;i="6000,8403,9656"; a="207887254" X-IronPort-AV: E=Sophos;i="5.75,251,1589266800"; d="gz'50?scan'50,208,50";a="207887254" X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 09:49:52 -0700 IronPort-SDR: bD5LQWkvYP4N3NFEG5v9FnC1QX4fDjGavEbWeqkmAhCeZf/eJpDh0FQB6n2tmTXotTE4W+qLnL mflyj9z+h+Xw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,251,1589266800"; d="gz'50?scan'50,208,50";a="383575772" Received: from lkp-server02.sh.intel.com (HELO 5ce11009e457) ([10.239.97.151]) by fmsmga001.fm.intel.com with ESMTP; 18 Jun 2020 09:49:49 -0700 Received: from kbuild by 5ce11009e457 with local (Exim 4.92) (envelope-from ) id 1jlxjY-0000K9-If; Thu, 18 Jun 2020 16:49:48 +0000 Date: Fri, 19 Jun 2020 00:49:34 +0800 From: kernel test robot To: Luc Van Oostenryck , Linus Torvalds Cc: kbuild-all@lists.01.org, LKML , Miguel Ojeda , Luc Van Oostenryck Subject: Re: [PATCH] sparse: use identifiers to define address spaces Message-ID: <202006190000.sKSRdVtz%lkp@intel.com> References: <20200617220226.88948-1-luc.vanoostenryck@gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="RnlQjJ0d97Da+TV1" Content-Disposition: inline In-Reply-To: <20200617220226.88948-1-luc.vanoostenryck@gmail.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --RnlQjJ0d97Da+TV1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Luc, I love your patch! Perhaps something to improve: [auto build test WARNING on linux/master] [also build test WARNING on linus/master v5.8-rc1 next-20200618] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Luc-Van-Oostenryck/sparse-use-identifiers-to-define-address-spaces/20200618-060614 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git a5dc8300df75e8b8384b4c82225f1e4a0b4d9b55 config: x86_64-randconfig-s031-20200618 (attached as .config) compiler: gcc-9 (Debian 9.3.0-13) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.2-rc1-10-gc17b1b06-dirty # save the attached .config to linux build tree make W=1 C=1 ARCH=x86_64 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> fs/f2fs/trace.c:142:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void **slot @@ got void [noderef] __rcu ** @@ fs/f2fs/trace.c:142:9: sparse: expected void **slot >> fs/f2fs/trace.c:142:9: sparse: got void [noderef] __rcu ** >> fs/f2fs/trace.c:142:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void **slot @@ got void [noderef] __rcu ** @@ fs/f2fs/trace.c:142:9: sparse: expected void **slot >> fs/f2fs/trace.c:142:9: sparse: got void [noderef] __rcu ** >> fs/f2fs/trace.c:142:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __rcu **slot @@ got void **slot @@ >> fs/f2fs/trace.c:142:9: sparse: expected void [noderef] __rcu **slot fs/f2fs/trace.c:142:9: sparse: got void **slot >> fs/f2fs/trace.c:142:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void **slot @@ got void [noderef] __rcu ** @@ fs/f2fs/trace.c:142:9: sparse: expected void **slot >> fs/f2fs/trace.c:142:9: sparse: got void [noderef] __rcu ** -- kernel/sched/core.c:512:38: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct task_struct *curr @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:512:38: sparse: expected struct task_struct *curr kernel/sched/core.c:512:38: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:567:9: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@ kernel/sched/core.c:567:9: sparse: expected struct sched_domain *[assigned] sd kernel/sched/core.c:567:9: sparse: got struct sched_domain [noderef] __rcu *parent kernel/sched/core.c:1432:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *p @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:1432:33: sparse: expected struct task_struct *p kernel/sched/core.c:1432:33: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:1432:68: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *tsk @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:1432:68: sparse: expected struct task_struct *tsk kernel/sched/core.c:1432:68: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:2176:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct sched_domain *[assigned] sd @@ got struct sched_domain [noderef] __rcu *parent @@ kernel/sched/core.c:2176:17: sparse: expected struct sched_domain *[assigned] sd kernel/sched/core.c:2176:17: sparse: got struct sched_domain [noderef] __rcu *parent kernel/sched/core.c:2342:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct const *p @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:2342:36: sparse: expected struct task_struct const *p kernel/sched/core.c:2342:36: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:3650:38: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct task_struct *curr @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:3650:38: sparse: expected struct task_struct *curr kernel/sched/core.c:3650:38: sparse: got struct task_struct [noderef] __rcu *curr >> kernel/sched/core.c:3735:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *curr @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:3735:14: sparse: expected struct task_struct *curr kernel/sched/core.c:3735:14: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:4083:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct task_struct *prev @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:4083:14: sparse: expected struct task_struct *prev kernel/sched/core.c:4083:14: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:4506:17: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/core.c:4506:17: sparse: struct task_struct * kernel/sched/core.c:4506:17: sparse: struct task_struct [noderef] __rcu * kernel/sched/core.c:4705:22: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/core.c:4705:22: sparse: struct task_struct [noderef] __rcu * kernel/sched/core.c:4705:22: sparse: struct task_struct * kernel/sched/core.c:8011:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct *p @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/core.c:8011:25: sparse: expected struct task_struct *p kernel/sched/core.c:8011:25: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/pelt.h:80:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct task_struct const *p @@ got struct task_struct [noderef] __rcu *curr @@ kernel/sched/pelt.h:80:13: sparse: expected struct task_struct const *p kernel/sched/pelt.h:80:13: sparse: got struct task_struct [noderef] __rcu *curr kernel/sched/core.c:1415:33: sparse: sparse: dereference of noderef expression kernel/sched/core.c:1416:19: sparse: sparse: dereference of noderef expression kernel/sched/core.c:1419:40: sparse: sparse: dereference of noderef expression kernel/sched/sched.h:1657:25: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1657:25: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1657:25: sparse: struct task_struct * kernel/sched/sched.h:1803:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1803:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1803:9: sparse: struct task_struct * kernel/sched/sched.h:1809:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1809:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1809:9: sparse: struct task_struct * kernel/sched/core.c:1388:38: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/core.c:1388:38: sparse: struct task_struct [noderef] __rcu * kernel/sched/core.c:1388:38: sparse: struct task_struct const * kernel/sched/sched.h:1657:25: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1657:25: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1657:25: sparse: struct task_struct * kernel/sched/sched.h:1803:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1803:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1803:9: sparse: struct task_struct * kernel/sched/sched.h:1803:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1803:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1803:9: sparse: struct task_struct * kernel/sched/sched.h:1657:25: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1657:25: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1657:25: sparse: struct task_struct * kernel/sched/sched.h:1803:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1803:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1803:9: sparse: struct task_struct * kernel/sched/sched.h:1809:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1809:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1809:9: sparse: struct task_struct * kernel/sched/sched.h:1657:25: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1657:25: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1657:25: sparse: struct task_struct * kernel/sched/sched.h:1803:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1803:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1803:9: sparse: struct task_struct * kernel/sched/sched.h:1809:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1809:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1809:9: sparse: struct task_struct * kernel/sched/sched.h:1657:25: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1657:25: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1657:25: sparse: struct task_struct * kernel/sched/sched.h:1803:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1803:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1803:9: sparse: struct task_struct * kernel/sched/sched.h:1809:9: sparse: sparse: incompatible types in comparison expression (different address spaces): kernel/sched/sched.h:1809:9: sparse: struct task_struct [noderef] __rcu * kernel/sched/sched.h:1809:9: sparse: struct task_struct * -- >> drivers/mtd/maps/nettel.c:179:25: sparse: sparse: cast removes address space '__iomem' of expression >> drivers/mtd/maps/nettel.c:223:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *static [assigned] [toplevel] nettel_mmcrp @@ >> drivers/mtd/maps/nettel.c:223:25: sparse: expected void volatile [noderef] __iomem *addr drivers/mtd/maps/nettel.c:223:25: sparse: got void *static [assigned] [toplevel] nettel_mmcrp drivers/mtd/maps/nettel.c:416:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *static [assigned] [toplevel] nettel_mmcrp @@ drivers/mtd/maps/nettel.c:416:17: sparse: expected void volatile [noderef] __iomem *addr drivers/mtd/maps/nettel.c:416:17: sparse: got void *static [assigned] [toplevel] nettel_mmcrp drivers/mtd/maps/nettel.c:434:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got void *static [assigned] [toplevel] nettel_mmcrp @@ drivers/mtd/maps/nettel.c:434:25: sparse: expected void volatile [noderef] __iomem *addr drivers/mtd/maps/nettel.c:434:25: sparse: got void *static [assigned] [toplevel] nettel_mmcrp -- >> net/netfilter/nf_tables_api.c:1405:25: sparse: sparse: cast between address spaces (__percpu -> __rcu) net/netfilter/nf_tables_api.c:1405:25: sparse: sparse: incompatible types in comparison expression (different address spaces): >> net/netfilter/nf_tables_api.c:1405:25: sparse: struct nft_stats [noderef] __rcu * >> net/netfilter/nf_tables_api.c:1405:25: sparse: struct nft_stats [noderef] __percpu * >> net/netfilter/nf_tables_api.c:1567:31: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected struct nft_stats [noderef] __percpu * @@ got void * @@ net/netfilter/nf_tables_api.c:1570:31: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected struct nft_stats [noderef] __percpu * @@ got void * @@ net/netfilter/nf_tables_api.c:1574:31: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected struct nft_stats [noderef] __percpu * @@ got void * @@ net/netfilter/nf_tables_api.c:1596:17: sparse: sparse: cast between address spaces (__percpu -> __rcu) net/netfilter/nf_tables_api.c:1596:17: sparse: sparse: incompatible types in comparison expression (different address spaces): net/netfilter/nf_tables_api.c:1596:17: sparse: struct nft_stats [noderef] __rcu * net/netfilter/nf_tables_api.c:1596:17: sparse: struct nft_stats [noderef] __percpu * net/netfilter/nf_tables_api.c:1596:17: sparse: sparse: incompatible types in comparison expression (different address spaces): net/netfilter/nf_tables_api.c:1596:17: sparse: struct nft_stats [noderef] __rcu * net/netfilter/nf_tables_api.c:1596:17: sparse: struct nft_stats [noderef] __percpu * net/netfilter/nf_tables_api.c:1639:21: sparse: sparse: cast between address spaces (__percpu -> __rcu) net/netfilter/nf_tables_api.c:1639:21: sparse: sparse: incompatible types in comparison expression (different address spaces): net/netfilter/nf_tables_api.c:1639:21: sparse: struct nft_stats [noderef] __rcu * net/netfilter/nf_tables_api.c:1639:21: sparse: struct nft_stats [noderef] __percpu * net/netfilter/nf_tables_api.c:1947:25: sparse: sparse: cast between address spaces (__percpu -> __rcu) net/netfilter/nf_tables_api.c:1947:25: sparse: sparse: incompatible types in comparison expression (different address spaces): net/netfilter/nf_tables_api.c:1947:25: sparse: struct nft_stats [noderef] __rcu * net/netfilter/nf_tables_api.c:1947:25: sparse: struct nft_stats [noderef] __percpu * >> net/netfilter/nf_tables_api.c:2097:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct nft_stats *stats @@ got struct nft_stats [noderef] __percpu * @@ >> net/netfilter/nf_tables_api.c:2108:38: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct nft_stats [noderef] __percpu *stats @@ got struct nft_stats *stats @@ >> net/netfilter/nf_tables_api.c:2144:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __percpu *__pdata @@ got struct nft_stats *stats @@ include/linux/rcupdate.h:686:9: sparse: sparse: context imbalance in 'nft_netlink_dump_start_rcu' - unexpected unlock -- >> fs/coda/upcall.c:618:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ fs/coda/upcall.c:618:31: sparse: expected struct spinlock [usertype] *lock >> fs/coda/upcall.c:618:31: sparse: got struct spinlock [noderef] __rcu * fs/coda/upcall.c:627:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ fs/coda/upcall.c:627:33: sparse: expected struct spinlock [usertype] *lock fs/coda/upcall.c:627:33: sparse: got struct spinlock [noderef] __rcu * fs/coda/upcall.c:632:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ fs/coda/upcall.c:632:31: sparse: expected struct spinlock [usertype] *lock fs/coda/upcall.c:632:31: sparse: got struct spinlock [noderef] __rcu * fs/coda/upcall.c:635:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@ fs/coda/upcall.c:635:33: sparse: expected struct spinlock [usertype] *lock fs/coda/upcall.c:635:33: sparse: got struct spinlock [noderef] __rcu * vim +142 fs/f2fs/trace.c 351f4fba843db3 Jaegeuk Kim 2015-01-07 130 351f4fba843db3 Jaegeuk Kim 2015-01-07 131 #define PIDVEC_SIZE 128 351f4fba843db3 Jaegeuk Kim 2015-01-07 132 static unsigned int gang_lookup_pids(pid_t *results, unsigned long first_index, 351f4fba843db3 Jaegeuk Kim 2015-01-07 133 unsigned int max_items) 351f4fba843db3 Jaegeuk Kim 2015-01-07 134 { 351f4fba843db3 Jaegeuk Kim 2015-01-07 135 struct radix_tree_iter iter; 351f4fba843db3 Jaegeuk Kim 2015-01-07 136 void **slot; 351f4fba843db3 Jaegeuk Kim 2015-01-07 137 unsigned int ret = 0; 351f4fba843db3 Jaegeuk Kim 2015-01-07 138 351f4fba843db3 Jaegeuk Kim 2015-01-07 139 if (unlikely(!max_items)) 351f4fba843db3 Jaegeuk Kim 2015-01-07 140 return 0; 351f4fba843db3 Jaegeuk Kim 2015-01-07 141 351f4fba843db3 Jaegeuk Kim 2015-01-07 @142 radix_tree_for_each_slot(slot, &pids, &iter, first_index) { 351f4fba843db3 Jaegeuk Kim 2015-01-07 143 results[ret] = iter.index; b0beab5016d040 Sheng Yong 2017-03-08 144 if (++ret == max_items) 351f4fba843db3 Jaegeuk Kim 2015-01-07 145 break; 351f4fba843db3 Jaegeuk Kim 2015-01-07 146 } 351f4fba843db3 Jaegeuk Kim 2015-01-07 147 return ret; 351f4fba843db3 Jaegeuk Kim 2015-01-07 148 } 351f4fba843db3 Jaegeuk Kim 2015-01-07 149 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --RnlQjJ0d97Da+TV1 Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 --RnlQjJ0d97Da+TV1--