Re: [PATCH V9 2/2] powerpc/nodes: Ensure enough nodes avail for operations

From: kbuild test robot
Date: Wed Aug 23 2017 - 11:58:09 EST


Hi Michael,

[auto build test ERROR on powerpc/next]
[also build test ERROR on v4.13-rc6 next-20170823]
[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/Michael-Bringmann/powerpc-numa-Update-CPU-topology-when-VPHN-enabled/20170823-173526
base: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next
config: powerpc-defconfig (attached as .config)
compiler: powerpc64-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
wget https://raw.githubusercontent.com/01org/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=powerpc

Note: it may well be a FALSE warning. FWIW you are at least aware of it now.
http://gcc.gnu.org/wiki/Better_Uninitialized_Warnings

All errors (new ones prefixed by >>):

arch/powerpc/mm/numa.c: In function 'initmem_init':
>> arch/powerpc/mm/numa.c:923:3: error: 'levelval' may be used uninitialized in this function [-Werror=maybe-uninitialized]
printk(KERN_INFO "Numa nodes avail: %d (%d) \n", (int) levelval, (int) entries);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/mm/numa.c:904:21: note: 'levelval' was declared here
u32 len, entries, levelval, i;
^~~~~~~~
cc1: all warnings being treated as errors

vim +/levelval +923 arch/powerpc/mm/numa.c

895
896 static void __init node_associativity_setup(void)
897 {
898 struct device_node *rtas;
899 printk(KERN_INFO "%s:%d\n", __FUNCTION__, __LINE__);
900
901 rtas = of_find_node_by_path("/rtas");
902 if (rtas) {
903 const __be32 *prop;
904 u32 len, entries, levelval, i;
905 printk(KERN_INFO "%s:%d\n", __FUNCTION__, __LINE__);
906
907 prop = of_get_property(rtas, "ibm,max-associativity-domains", &len);
908 if (!prop || len < sizeof(unsigned int)) {
909 printk(KERN_INFO "%s:%d\n", __FUNCTION__, __LINE__);
910 goto endit;
911 }
912
913 entries = of_read_number(prop++, 1);
914
915 if (len < (entries * sizeof(unsigned int))) {
916 printk(KERN_INFO "%s:%d\n", __FUNCTION__, __LINE__);
917 goto endit;
918 }
919
920 for (i = 0; i < entries; i++)
921 levelval = of_read_number(prop++, 1);
922
> 923 printk(KERN_INFO "Numa nodes avail: %d (%d) \n", (int) levelval, (int) entries);
924
925 for (i = 0; i < levelval; i++) {
926 if (!node_possible(i)) {
927 setup_node_data(i, 0, 0);
928 node_set(i, node_possible_map);
929 }
930 }
931 }
932
933 endit:
934 if (rtas)
935 of_node_put(rtas);
936 }
937

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip