Content-Type: multipart/mixed; boundary="===============0247318529870261869==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH v3 4/4] slub: Force on no_hash_pointers when slub_debug is enabled Date: Wed, 02 Jun 2021 06:45:55 +0800 Message-ID: <202106020644.UDFIJOUU-lkp@intel.com> In-Reply-To: <20210601182202.3011020-5-swboyd@chromium.org> List-Id: --===============0247318529870261869== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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-no= n-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 db26cd= 30b6dd65e88d786e97a1e453af5cd48966) reproduce (this is a W=3D1 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/ab6ede356a6f366690b4a4e9d= d597b63be241ad0 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=3D$HOME/0day COMPILER=3Dclang make.cross ARCH= =3Ds390 = 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 =3D __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 =3D __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + a= ddr)); ~~~~~~~~~~ ^ include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from mac= ro '__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 =3D __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + a= ddr)); ~~~~~~~~~~ ^ include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from mac= ro '__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_enabl= ed' if (static_branch_unlikely(&slub_debug_enabled)) ^ >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabl= ed' >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabl= ed' >> mm/slub.c:4464:30: error: use of undeclared identifier 'slub_debug_enabl= ed' >> 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_bra= nch_unlikely' #define static_branch_unlikely(x) unlikely_notrace(static_key_enab= led(&(x)->key)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~~~~~~~~~~ include/linux/compiler.h:80:30: note: expanded from macro 'unlikely_notr= ace' # 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 =3D 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 =3D &boot_kmem_cache_node; 4468 kmem_cache =3D &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 =3D 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 =3D bootstrap(&boot_kmem_cache); 4491 kmem_cache_node =3D 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=3D%d, Order=3D%u-%u, MinObjects=3D%u, CPUs= =3D%u, Nodes=3D%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(a)lists.01.org --===============0247318529870261869== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 --===============0247318529870261869==--