Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp83164pxj; Tue, 1 Jun 2021 15:48:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzNhj5F26zaq9orzuFvQJYG2teU+5rRI8+4oeac7uy5zr1MgH7y2WpX57GV23dCz3ac+4sH X-Received: by 2002:a6b:b215:: with SMTP id b21mr2086438iof.165.1622587685272; Tue, 01 Jun 2021 15:48:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622587685; cv=none; d=google.com; s=arc-20160816; b=HCZF9aK8aNgT0bduH7EmphGAK/pSFohrcb4x64H0VU0NIU4d5g1iIiwr6WwPg59+8L ajZk0YDDw/d7+e2WtKj+uxTcRpJHJs0apIJM6PkNP8WMBYkNPHzOBVsMUfwsUx7xEnDP Ckr2lNurE4zhMbfGVpV//O6zCuvCNTLy4t6ruvFpOaD2UgzbbT7K2+c0fArpzMIwQJcR gvZ1ur5loJWCiJCswI/vN45iIwFjRH6vn8jn6jwD0q4+wX7lEturxP29FTGU7fLDs43y 57n9U3eoPiQRFW96tGl6ErwUf9DAH7o60gYcsAnvdw15g3Y/YroMhpylWInwZry/nlQJ +UwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :ironport-sdr:ironport-sdr; bh=5D4V7Of2qeXQ9fx+tV6XL2/S4X4WSFwKmYbtjm5BJx0=; b=dOlRYc4RjNAwuzXq9m7Oh43Ei3gXnTHIhuyCfYJPe4B0xqHVp4sHhUwAGUBPLF5OaG HBQqIELWfr51lLvS5awaaDnocmDUJ0aegi4ohym6jknjU0t5MKWE6vM2rE985+PK+5Dn q2lRJl1FFM3k+pmZ9JCw9IALnXFWBaqYaPfQXWn/UOp3+g96TESw9omLPR6XFhYbCrtF Bq5Ymt/tOv8cy7XGVAvyaiPqIt6jNeyiRlDBmtXGjd02eA587mfag8QyscVHzpvznc0S SPmtPn3NJQAksEwseuRliY7S39yNEkc9EfjP697xMgm7pf+OU7ZK/y4gu99FcYLjHxbO Wgcg== 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 6si10602518ilg.15.2021.06.01.15.47.51; Tue, 01 Jun 2021 15:48:05 -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 S235093AbhFAWs0 (ORCPT + 99 others); Tue, 1 Jun 2021 18:48:26 -0400 Received: from mga11.intel.com ([192.55.52.93]:6549 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234799AbhFAWsZ (ORCPT ); Tue, 1 Jun 2021 18:48:25 -0400 IronPort-SDR: 3WWE7q2zz46ELE/VBdSuL6L+ORjYNhvFxp96pN6fdWJr8exxVr8vwuny0Yn3ZGyw1EbYx5q/QN RuU8Y0Io5TYQ== X-IronPort-AV: E=McAfee;i="6200,9189,10002"; a="200645157" X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="gz'50?scan'50,208,50";a="200645157" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2021 15:46:43 -0700 IronPort-SDR: d47rKV+OIFp/jgTUmv5YyHoZigcfG/9xoXefIRt4gJdrpANhxlUq2q/BJ5hLWfJkF/ZUZyn+FJ lj9ZHjmMGhpQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,241,1616482800"; d="gz'50?scan'50,208,50";a="399764545" Received: from lkp-server02.sh.intel.com (HELO 1ec8406c5392) ([10.239.97.151]) by orsmga006.jf.intel.com with ESMTP; 01 Jun 2021 15:46:38 -0700 Received: from kbuild by 1ec8406c5392 with local (Exim 4.92) (envelope-from ) id 1loD9h-0005Nf-Qb; Tue, 01 Jun 2021 22:46:37 +0000 Date: Wed, 2 Jun 2021 06:45:55 +0800 From: kernel test robot To: Stephen Boyd , Andrew Morton Cc: kbuild-all@lists.01.org, clang-built-linux@googlegroups.com, Linux Memory Management List , linux-kernel@vger.kernel.org, Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Vlastimil Babka , Petr Mladek , Joe Perches Subject: Re: [PATCH v3 4/4] slub: Force on no_hash_pointers when slub_debug is enabled Message-ID: <202106020644.UDFIJOUU-lkp@intel.com> References: <20210601182202.3011020-5-swboyd@chromium.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="huq684BweRXVnRxX" Content-Disposition: inline In-Reply-To: <20210601182202.3011020-5-swboyd@chromium.org> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --huq684BweRXVnRxX Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Stephen, I love your patch! Yet something to improve: [auto build test ERROR on d07f6ca923ea0927a1024dfccafc5b53b61cfecc] url: https://github.com/0day-ci/linux/commits/Stephen-Boyd/slub-Print-non-hashed-pointers-in-slub-debugging/20210602-022255 base: d07f6ca923ea0927a1024dfccafc5b53b61cfecc config: s390-randconfig-r036-20210601 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project db26cd30b6dd65e88d786e97a1e453af5cd48966) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install s390 cross compiling tool for clang build # apt-get install binutils-s390x-linux-gnu # https://github.com/0day-ci/linux/commit/ab6ede356a6f366690b4a4e9dd597b63be241ad0 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Stephen-Boyd/slub-Print-non-hashed-pointers-in-slub-debugging/20210602-022255 git checkout ab6ede356a6f366690b4a4e9dd597b63be241ad0 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): In file included from mm/slub.c:14: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:25: In file included from include/linux/scatterlist.h:9: In file included from arch/s390/include/asm/io.h:75: include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] val = __raw_readb(PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr)); ~~~~~~~~~~ ^ include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from macro '__le16_to_cpu' #define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x)) ^ include/uapi/linux/swab.h:102:54: note: expanded from macro '__swab16' #define __swab16(x) (__u16)__builtin_bswap16((__u16)(x)) ^ In file included from mm/slub.c:14: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:25: In file included from include/linux/scatterlist.h:9: In file included from arch/s390/include/asm/io.h:75: include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr)); ~~~~~~~~~~ ^ include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu' #define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x)) ^ include/uapi/linux/swab.h:115:54: note: expanded from macro '__swab32' #define __swab32(x) (__u32)__builtin_bswap32((__u32)(x)) ^ In file included from mm/slub.c:14: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:25: In file included from include/linux/scatterlist.h:9: In file included from arch/s390/include/asm/io.h:75: include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] __raw_writeb(value, PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr); ~~~~~~~~~~ ^ include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] readsb(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] readsw(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] readsl(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] writesb(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] writesw(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] writesl(PCI_IOBASE + addr, buffer, count); ~~~~~~~~~~ ^ >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabled' if (static_branch_unlikely(&slub_debug_enabled)) ^ >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabled' >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabled' >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabled' >> mm/slub.c:4464:6: error: invalid argument type 'void' to unary expression if (static_branch_unlikely(&slub_debug_enabled)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/jump_label.h:496:35: note: expanded from macro 'static_branch_unlikely' #define static_branch_unlikely(x) unlikely_notrace(static_key_enabled(&(x)->key)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/compiler.h:80:30: note: expanded from macro 'unlikely_notrace' # define unlikely_notrace(x) unlikely(x) ^~~~~~~~~~~ include/linux/compiler.h:78:40: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^~~~ 12 warnings and 5 errors generated. vim +/slub_debug_enabled +4464 mm/slub.c 4453 4454 void __init kmem_cache_init(void) 4455 { 4456 static __initdata struct kmem_cache boot_kmem_cache, 4457 boot_kmem_cache_node; 4458 int node; 4459 4460 if (debug_guardpage_minorder()) 4461 slub_max_order = 0; 4462 4463 /* Print slub debugging pointers without hashing */ > 4464 if (static_branch_unlikely(&slub_debug_enabled)) 4465 no_hash_pointers_enable(NULL); 4466 4467 kmem_cache_node = &boot_kmem_cache_node; 4468 kmem_cache = &boot_kmem_cache; 4469 4470 /* 4471 * Initialize the nodemask for which we will allocate per node 4472 * structures. Here we don't need taking slab_mutex yet. 4473 */ 4474 for_each_node_state(node, N_NORMAL_MEMORY) 4475 node_set(node, slab_nodes); 4476 4477 create_boot_cache(kmem_cache_node, "kmem_cache_node", 4478 sizeof(struct kmem_cache_node), SLAB_HWCACHE_ALIGN, 0, 0); 4479 4480 register_hotmemory_notifier(&slab_memory_callback_nb); 4481 4482 /* Able to allocate the per node structures */ 4483 slab_state = PARTIAL; 4484 4485 create_boot_cache(kmem_cache, "kmem_cache", 4486 offsetof(struct kmem_cache, node) + 4487 nr_node_ids * sizeof(struct kmem_cache_node *), 4488 SLAB_HWCACHE_ALIGN, 0, 0); 4489 4490 kmem_cache = bootstrap(&boot_kmem_cache); 4491 kmem_cache_node = bootstrap(&boot_kmem_cache_node); 4492 4493 /* Now we can use the kmem_cache to allocate kmalloc slabs */ 4494 setup_kmalloc_cache_index_table(); 4495 create_kmalloc_caches(0); 4496 4497 /* Setup random freelists for each cache */ 4498 init_freelist_randomization(); 4499 4500 cpuhp_setup_state_nocalls(CPUHP_SLUB_DEAD, "slub:dead", NULL, 4501 slub_cpu_dead); 4502 4503 pr_info("SLUB: HWalign=%d, Order=%u-%u, MinObjects=%u, CPUs=%u, Nodes=%u\n", 4504 cache_line_size(), 4505 slub_min_order, slub_max_order, slub_min_objects, 4506 nr_cpu_ids, nr_node_ids); 4507 } 4508 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --huq684BweRXVnRxX Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 AUr7s/4HfPuCx53hAAA= --huq684BweRXVnRxX--