CC: l...@lists.linux.dev CC: kbuild-...@lists.01.org BCC: l...@intel.com CC: linux-ker...@vger.kernel.org TO: Johan Almbladh <johan.almbl...@anyfinetworks.com> CC: Daniel Borkmann <dan...@iogearbox.net>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 09688c0166e76ce2fb85e86b9d99be8b0084cdf9 commit: c2a228d69cef802cf6bfd773c84f8419d2e2acf9 bpf/tests: Allow different number of runs per test case date: 6 months ago :::::: branch date: 15 hours ago :::::: commit date: 6 months ago config: riscv-randconfig-c006-20220310 (https://download.01.org/0day-ci/archive/20220314/202203141908.taeiwtmh-...@intel.com/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 276ca87382b8f16a65bddac700202924228982f6) 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 riscv cross compiling tool for clang build # apt-get install binutils-riscv64-linux-gnu # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c2a228d69cef802cf6bfd773c84f8419d2e2acf9 git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout c2a228d69cef802cf6bfd773c84f8419d2e2acf9 # save the config file to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv clang-analyzer If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> clang-analyzer warnings: (new ones prefixed by >>) ^~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:967:6: note: Left side of '&&' is true if (!result && powerplay_table->usDispClkDependencyTableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:967:17: note: Assuming field 'usDispClkDependencyTableOffset' is 0 if (!result && powerplay_table->usDispClkDependencyTableOffset) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:967:2: note: Taking false branch if (!result && powerplay_table->usDispClkDependencyTableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:973:7: note: 'result' is 0 if (!result && powerplay_table->usDcefclkDependencyTableOffset) ^~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:973:6: note: Left side of '&&' is true if (!result && powerplay_table->usDcefclkDependencyTableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:973:17: note: Assuming field 'usDcefclkDependencyTableOffset' is 0 if (!result && powerplay_table->usDcefclkDependencyTableOffset) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:973:2: note: Taking false branch if (!result && powerplay_table->usDcefclkDependencyTableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:978:7: note: 'result' is 0 if (!result && powerplay_table->usMclkDependencyTableOffset) ^~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:978:6: note: Left side of '&&' is true if (!result && powerplay_table->usMclkDependencyTableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:978:17: note: Assuming field 'usMclkDependencyTableOffset' is 0 if (!result && powerplay_table->usMclkDependencyTableOffset) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:978:2: note: Taking false branch if (!result && powerplay_table->usMclkDependencyTableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:983:7: note: 'result' is 0 if (!result && powerplay_table->usPCIETableOffset) ^~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:983:6: note: Left side of '&&' is true if (!result && powerplay_table->usPCIETableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:983:17: note: Assuming field 'usPCIETableOffset' is not equal to 0 if (!result && powerplay_table->usPCIETableOffset) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:983:2: note: Taking true branch if (!result && powerplay_table->usPCIETableOffset) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:984:12: note: Calling 'get_pcie_table' result = get_pcie_table(hwmgr, ^~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:794:2: note: Assuming field 'ucNumEntries' is not equal to 0 PP_ASSERT_WITH_CODE(atom_pcie_table->ucNumEntries, ^ drivers/gpu/drm/amd/amdgpu/../pm/inc/pp_debug.h:39:7: note: expanded from macro 'PP_ASSERT_WITH_CODE' if (!(cond)) { \ ^~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:794:2: note: Taking false branch PP_ASSERT_WITH_CODE(atom_pcie_table->ucNumEntries, ^ drivers/gpu/drm/amd/amdgpu/../pm/inc/pp_debug.h:39:3: note: expanded from macro 'PP_ASSERT_WITH_CODE' if (!(cond)) { \ ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:794:2: note: Loop condition is false. Exiting loop PP_ASSERT_WITH_CODE(atom_pcie_table->ucNumEntries, ^ drivers/gpu/drm/amd/amdgpu/../pm/inc/pp_debug.h:38:2: note: expanded from macro 'PP_ASSERT_WITH_CODE' do { \ ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:798:15: note: Calling 'kzalloc' pcie_table = kzalloc(struct_size(pcie_table, entries, atom_pcie_table->ucNumEntries), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/slab.h:721:9: note: Calling 'kmalloc' return kmalloc(size, flags | __GFP_ZERO); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/slab.h:579:2: note: Taking false branch if (__builtin_constant_p(size)) { ^ include/linux/slab.h:596:2: note: Returning pointer, which participates in a condition later return __kmalloc(size, flags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/slab.h:721:9: note: Returning from 'kmalloc' return kmalloc(size, flags | __GFP_ZERO); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/slab.h:721:2: note: Returning pointer, which participates in a condition later return kmalloc(size, flags | __GFP_ZERO); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:798:15: note: Returning from 'kzalloc' pcie_table = kzalloc(struct_size(pcie_table, entries, atom_pcie_table->ucNumEntries), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:800:6: note: Assuming 'pcie_table' is non-null if (!pcie_table) ^~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:800:2: note: Taking false branch if (!pcie_table) ^ drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.c:803:15: note: Access to field 'count' results in a dereference of a null pointer (loaded from field 'vdd_dep_on_sclk') pcie_count = table_info->vdd_dep_on_sclk->count; ^ ~~~~~~~~~~~~~~~ Suppressed 10 warnings (9 in non-user code, 1 with check filters). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 5 warnings generated. >> lib/test_bpf.c:63:8: warning: Excessive padding in 'struct bpf_test' (11 >> padding bytes, where 3 is optimal). Optimal fields order: descr, fill_helper, u, expected_errcode, stack_depth, nr_testruns, test, aux, data, frag_data, consider reordering the fields or adding explicit padding members [clang-analyzer-optin.performance.Padding] struct bpf_test { ~~~~~~~^~~~~~~~~~ lib/test_bpf.c:63:8: note: Excessive padding in 'struct bpf_test' (11 padding bytes, where 3 is optimal). Optimal fields order: descr, fill_helper, u, expected_errcode, stack_depth, nr_testruns, test, aux, data, frag_data, consider reordering the fields or adding explicit padding members struct bpf_test { ~~~~~~~^~~~~~~~~~ lib/test_bpf.c:8593:2: warning: Undefined or garbage value returned to caller [clang-analyzer-core.uninitialized.UndefReturn] return fp; ^ lib/test_bpf.c:9242:6: note: Assuming 'ret' is >= 0 if (ret < 0) ^~~~~~~ lib/test_bpf.c:9242:2: note: Taking false branch if (ret < 0) ^ lib/test_bpf.c:9245:8: note: Calling 'test_bpf' ret = test_bpf(); ^~~~~~~~~~ lib/test_bpf.c:8953:2: note: Loop condition is true. Entering loop body for (i = 0; i < ARRAY_SIZE(tests); i++) { ^ lib/test_bpf.c:8958:3: note: Taking false branch if (exclude_test(i)) ^ lib/test_bpf.c:8961:3: note: Loop condition is false. Exiting loop pr_info("#%d %s ", i, tests[i].descr); ^ include/linux/printk.h:519:2: note: expanded from macro 'pr_info' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^ include/linux/printk.h:446:26: note: expanded from macro 'printk' #define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__) ^ include/linux/printk.h:417:3: note: expanded from macro 'printk_index_wrap' __printk_index_emit(_fmt, NULL, NULL); \ ^ include/linux/printk.h:392:34: note: expanded from macro '__printk_index_emit' #define __printk_index_emit(...) do {} while (0) ^ lib/test_bpf.c:8963:8: note: Calling 'generate_filter' fp = generate_filter(i, &err); ^~~~~~~~~~~~~~~~~~~~~~~~ lib/test_bpf.c:8537:2: note: 'fp' declared without an initial value struct bpf_prog *fp; ^~~~~~~~~~~~~~~~~~~ lib/test_bpf.c:8539:2: note: 'Default' branch taken. Execution continues on line 8592 switch (test_type) { ^ lib/test_bpf.c:8593:2: note: Undefined or garbage value returned to caller return fp; ^ ~~ Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 3 warnings generated. Suppressed 3 warnings (3 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 4 warnings generated. Suppressed 4 warnings (3 in non-user code, 1 with check filters). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 19 warnings generated. drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1328:2: warning: Value stored to 'rd_buf_ptr' is never read [clang-analyzer-deadcode.DeadStores] rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1328:2: note: Value stored to 'rd_buf_ptr' is never read rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1515:2: warning: Value stored to 'rd_buf_ptr' is never read [clang-analyzer-deadcode.DeadStores] rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1515:2: note: Value stored to 'rd_buf_ptr' is never read rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1700:2: warning: Value stored to 'rd_buf_ptr' is never read [clang-analyzer-deadcode.DeadStores] rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1700:2: note: Value stored to 'rd_buf_ptr' is never read rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1881:2: warning: Value stored to 'rd_buf_ptr' is never read [clang-analyzer-deadcode.DeadStores] rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:1881:2: note: Value stored to 'rd_buf_ptr' is never read rd_buf_ptr += str_len; ^ ~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.c:2057:2: warning: Value stored to 'rd_buf_ptr' is never read [clang-analyzer-deadcode.DeadStores] rd_buf_ptr += str_len; vim +63 lib/test_bpf.c 10f18e0ba1ea7e Daniel Borkmann 2014-05-23 62 64a8946b447e41 Alexei Starovoitov 2014-05-08 @63 struct bpf_test { 64a8946b447e41 Alexei Starovoitov 2014-05-08 64 const char *descr; 64a8946b447e41 Alexei Starovoitov 2014-05-08 65 union { 64a8946b447e41 Alexei Starovoitov 2014-05-08 66 struct sock_filter insns[MAX_INSNS]; 2695fb552cbef1 Alexei Starovoitov 2014-07-24 67 struct bpf_insn insns_int[MAX_INSNS]; a4afd37b26f4b9 Daniel Borkmann 2015-05-13 68 struct { a4afd37b26f4b9 Daniel Borkmann 2015-05-13 69 void *insns; a4afd37b26f4b9 Daniel Borkmann 2015-05-13 70 unsigned int len; a4afd37b26f4b9 Daniel Borkmann 2015-05-13 71 } ptr; ece80490e2c1ce Andrew Morton 2014-05-22 72 } u; 10f18e0ba1ea7e Daniel Borkmann 2014-05-23 73 __u8 aux; 64a8946b447e41 Alexei Starovoitov 2014-05-08 74 __u8 data[MAX_DATA]; 64a8946b447e41 Alexei Starovoitov 2014-05-08 75 struct { 64a8946b447e41 Alexei Starovoitov 2014-05-08 76 int data_size; 64a8946b447e41 Alexei Starovoitov 2014-05-08 77 __u32 result; 64a8946b447e41 Alexei Starovoitov 2014-05-08 78 } test[MAX_SUBTESTS]; a4afd37b26f4b9 Daniel Borkmann 2015-05-13 79 int (*fill_helper)(struct bpf_test *self); 09584b40674241 Yonghong Song 2018-02-02 80 int expected_errcode; /* used when FLAG_EXPECTED_FAIL is set in the aux */ bac142acb90e95 Nicolas Schichan 2015-08-04 81 __u8 frag_data[MAX_DATA]; 105c03614bff2d Alexei Starovoitov 2017-05-30 82 int stack_depth; /* for eBPF only, since tests don't call verifier */ c2a228d69cef80 Johan Almbladh 2021-09-14 83 int nr_testruns; /* Custom run count, defaults to MAX_TESTRUNS if 0 */ 64a8946b447e41 Alexei Starovoitov 2014-05-08 84 }; 64a8946b447e41 Alexei Starovoitov 2014-05-08 85 :::::: The code at line 63 was first introduced by commit :::::: 64a8946b447e418b4283c3573ef397980cca0cd8 net: filter: BPF testsuite :::::: TO: Alexei Starovoitov <a...@plumgrid.com> :::::: CC: David S. Miller <da...@davemloft.net> --- 0-DAY CI Kernel Test Service https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org _______________________________________________ kbuild mailing list -- kbuild@lists.01.org To unsubscribe send an email to kbuild-le...@lists.01.org