CC: [email protected] CC: [email protected] BCC: [email protected] In-Reply-To: <20220320183225.2.I61857ea92be43418b8ce16839f79a4704cc89fa6@changeid> References: <20220320183225.2.I61857ea92be43418b8ce16839f79a4704cc89fa6@changeid> TO: Manish Mandlik <[email protected]> TO: [email protected] TO: [email protected] CC: [email protected] CC: [email protected] CC: "Abhishek Pandit-Subedi" <[email protected]> CC: Manish Mandlik <[email protected]> CC: Chethan Tumkur Narayan <[email protected]> CC: Johan Hedberg <[email protected]> CC: [email protected]
Hi Manish, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on bluetooth/master] [also build test WARNING on bluetooth-next/master v5.17 next-20220325] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Manish-Mandlik/Bluetooth-Add-support-for-devcoredump/20220321-093553 base: https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth.git master :::::: branch date: 5 days ago :::::: commit date: 5 days ago config: i386-randconfig-c001 (https://download.01.org/0day-ci/archive/20220326/[email protected]/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 85e9b2687a13d1908aa86d1b89c5ce398a06cd39) 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 # https://github.com/0day-ci/linux/commit/677f482cb7027ab030842015cfd6c188568df39f git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Manish-Mandlik/Bluetooth-Add-support-for-devcoredump/20220321-093553 git checkout 677f482cb7027ab030842015cfd6c188568df39f # save the config file to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 clang-analyzer If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> clang-analyzer warnings: (new ones prefixed by >>) ^~~~ drivers/bluetooth/btintel.c:636:2: note: '?' condition is false if (skb->data[0]) { ^ include/linux/compiler.h:56:28: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ include/linux/compiler.h:58:31: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^ drivers/bluetooth/btintel.c:636:2: note: '?' condition is false if (skb->data[0]) { ^ include/linux/compiler.h:56:28: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ include/linux/compiler.h:58:69: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^ include/linux/compiler.h:69:2: note: expanded from macro '__trace_if_value' (cond) ? \ ^ drivers/bluetooth/btintel.c:636:2: note: Taking false branch if (skb->data[0]) { ^ include/linux/compiler.h:56:23: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ drivers/bluetooth/btintel.c:643:2: note: Calling 'btintel_parse_version_tlv' btintel_parse_version_tlv(hdev, version, skb); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bluetooth/btintel.c:530:2: note: Loop condition is false. Execution continues on line 617 while (skb->len) { ^ drivers/bluetooth/btintel.c:617:2: note: Returning without writing to 'version->cnvi_bt' return 0; ^ drivers/bluetooth/btintel.c:643:2: note: Returning from 'btintel_parse_version_tlv' btintel_parse_version_tlv(hdev, version, skb); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bluetooth/btintel.c:646:2: note: Returning without writing to 'version->cnvi_bt' return 0; ^ drivers/bluetooth/btintel.c:2360:8: note: Returning from 'btintel_read_version_tlv' err = btintel_read_version_tlv(hdev, &new_ver); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bluetooth/btintel.c:2361:2: note: '?' condition is false if (err) ^ include/linux/compiler.h:56:28: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ include/linux/compiler.h:58:31: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^ drivers/bluetooth/btintel.c:2361:6: note: 'err' is 0 if (err) ^ include/linux/compiler.h:56:47: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^~~~ include/linux/compiler.h:58:86: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^~~~ include/linux/compiler.h:69:3: note: expanded from macro '__trace_if_value' (cond) ? \ ^~~~ drivers/bluetooth/btintel.c:2361:2: note: '?' condition is false if (err) ^ include/linux/compiler.h:56:28: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ include/linux/compiler.h:58:69: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^ include/linux/compiler.h:69:2: note: expanded from macro '__trace_if_value' (cond) ? \ ^ drivers/bluetooth/btintel.c:2361:2: note: Taking false branch if (err) ^ include/linux/compiler.h:56:23: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ drivers/bluetooth/btintel.c:2364:2: note: Calling 'btintel_version_info_tlv' btintel_version_info_tlv(hdev, &new_ver); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bluetooth/btintel.c:444:6: note: The left operand of '&' is a garbage value if (INTEL_HW_PLATFORM(version->cnvi_bt) != 0x37) { ^ drivers/bluetooth/btintel.h:146:53: note: expanded from macro 'INTEL_HW_PLATFORM' #define INTEL_HW_PLATFORM(cnvx_bt) ((u8)(((cnvx_bt) & 0x0000ff00) >> 8)) ~~~~~~~ ^ include/linux/compiler.h:56:47: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^~~~ include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^~~~ >> drivers/bluetooth/btintel.c:1425:2: warning: Value stored to 'ptr' is never >> read [clang-analyzer-deadcode.DeadStores] ptr += read; ^ ~~~~ drivers/bluetooth/btintel.c:1425:2: note: Value stored to 'ptr' is never read ptr += read; ^ ~~~~ Suppressed 1 warnings (1 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. 1 warning generated. sound/synth/util_mem.c:50:3: warning: Use of memory after it is freed [clang-analyzer-unix.Malloc] list_del(p); ^ ~ sound/synth/util_mem.c:46:6: note: Assuming 'hdr' is non-null if (!hdr) ^ include/linux/compiler.h:56:47: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^~~~ include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^~~~ sound/synth/util_mem.c:46:2: note: '?' condition is false if (!hdr) ^ include/linux/compiler.h:56:28: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ include/linux/compiler.h:58:31: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^ sound/synth/util_mem.c:46:7: note: 'hdr' is non-null if (!hdr) ^ include/linux/compiler.h:56:47: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^~~~ include/linux/compiler.h:58:86: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^~~~ include/linux/compiler.h:69:3: note: expanded from macro '__trace_if_value' (cond) ? \ ^~~~ sound/synth/util_mem.c:46:7: note: 'hdr' is non-null if (!hdr) ^ include/linux/compiler.h:56:47: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^~~~ include/linux/compiler.h:58:86: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^~~~ include/linux/compiler.h:69:3: note: expanded from macro '__trace_if_value' (cond) ? \ ^~~~ sound/synth/util_mem.c:46:2: note: '?' condition is false if (!hdr) ^ include/linux/compiler.h:56:28: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ include/linux/compiler.h:58:69: note: expanded from macro '__trace_if_var' #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond)) ^ include/linux/compiler.h:69:2: note: expanded from macro '__trace_if_value' (cond) ? \ ^ sound/synth/util_mem.c:46:2: note: Taking false branch if (!hdr) ^ include/linux/compiler.h:56:23: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^ sound/synth/util_mem.c:49:2: note: Loop condition is true. Entering loop body while ((p = hdr->block.next) != &hdr->block) { ^ sound/synth/util_mem.c:51:3: note: Memory is released kfree(get_memblk(p)); ^~~~~~~~~~~~~~~~~~~~ sound/synth/util_mem.c:49:2: note: Loop condition is true. Entering loop body while ((p = hdr->block.next) != &hdr->block) { ^ sound/synth/util_mem.c:50:3: note: Use of memory after it is freed list_del(p); ^ ~ 1 warning generated. Suppressed 1 warnings (1 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. 11 warnings generated. net/ipv6/route.c:567:6: warning: Access to field 'nh' results in a dereference of a null pointer (loaded from variable 'f6i') [clang-analyzer-core.NullDereference] if (unlikely(f6i->nh)) { ^ include/linux/compiler.h:48:24: note: expanded from macro 'unlikely' # define unlikely(x) (__branch_check__(x, 0, __builtin_constant_p(x))) ^ ~ include/linux/compiler.h:33:33: note: expanded from macro '__branch_check__' ______r = __builtin_expect(!!(x), expect); \ ^~ include/linux/compiler.h:56:47: note: expanded from macro 'if' #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) ^~~~ include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var' vim +/ptr +1425 drivers/bluetooth/btintel.c 927ac8da35db763 Joseph Hwang 2021-08-15 1404 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1405 static int btintel_dmp_hdr(struct hci_dev *hdev, char *buf, size_t size) 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1406 { 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1407 char *ptr = buf; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1408 size_t rem = size; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1409 size_t read = 0; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1410 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1411 read = snprintf(ptr, rem, "Controller Name: 0x%X\n", hw_variant); 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1412 rem -= read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1413 ptr += read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1414 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1415 read = snprintf(ptr, rem, "Firmware Version: 0x%X\n", fw_build_num); 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1416 rem -= read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1417 ptr += read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1418 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1419 read = snprintf(ptr, rem, "Driver: %s\n", driver_name); 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1420 rem -= read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1421 ptr += read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1422 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1423 read = snprintf(ptr, rem, "Vendor: Intel\n"); 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1424 rem -= read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 @1425 ptr += read; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1426 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1427 return size - rem; 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1428 } 677f482cb7027ab Abhishek Pandit-Subedi 2022-03-20 1429 -- 0-DAY CI Kernel Test Service https://01.org/lkp _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
