CC: [email protected] CC: [email protected] CC: [email protected] TO: farah kassabri <[email protected]> CC: Oded Gabbay <[email protected]>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: dd81e1c7d5fb126e5fbc5c9e334d7b3ec29a16a0 commit: b9d31cada7d9f137028c11534fff77fec8511690 habanalabs: change wait_for_interrupt implementation date: 4 weeks ago :::::: branch date: 23 hours ago :::::: commit date: 4 weeks ago config: riscv-randconfig-c006-20220124 (https://download.01.org/0day-ci/archive/20220124/[email protected]/config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 9006bf424847bf91f0a624ffc27ad165c7b804c4) 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=b9d31cada7d9f137028c11534fff77fec8511690 git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout b9d31cada7d9f137028c11534fff77fec8511690 # 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 <[email protected]> clang-analyzer warnings: (new ones prefixed by >>) ^ drivers/gpu/drm/nouveau/nouveau_connector.c:968:3: note: Calling 'nouveau_connector_detect_depth' nouveau_connector_detect_depth(connector); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:861:2: note: 'mode' initialized to a null pointer value struct drm_display_mode *mode = nv_connector->native_mode; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:865:20: note: Field 'edid' is null if (nv_connector->edid && connector->display_info.bpc) ^ drivers/gpu/drm/nouveau/nouveau_connector.c:865:25: note: Left side of '&&' is false if (nv_connector->edid && connector->display_info.bpc) ^ drivers/gpu/drm/nouveau/nouveau_connector.c:869:6: note: Assuming field 'type' is not equal to DCB_CONNECTOR_eDP if (nv_connector->type == DCB_CONNECTOR_eDP) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:869:2: note: Taking false branch if (nv_connector->type == DCB_CONNECTOR_eDP) { ^ drivers/gpu/drm/nouveau/nouveau_connector.c:875:23: note: Field 'type' is equal to DCB_OUTPUT_LVDS if (nv_encoder->dcb->type != DCB_OUTPUT_LVDS) { ^ drivers/gpu/drm/nouveau/nouveau_connector.c:875:2: note: Taking false branch if (nv_encoder->dcb->type != DCB_OUTPUT_LVDS) { ^ drivers/gpu/drm/nouveau/nouveau_connector.c:883:12: note: Field 'fp_no_ddc' is false if (bios->fp_no_ddc) { ^ drivers/gpu/drm/nouveau/nouveau_connector.c:883:2: note: Taking false branch if (bios->fp_no_ddc) { ^ drivers/gpu/drm/nouveau/nouveau_connector.c:892:20: note: Field 'edid' is null if (nv_connector->edid && ^ drivers/gpu/drm/nouveau/nouveau_connector.c:892:25: note: Left side of '&&' is false if (nv_connector->edid && ^ drivers/gpu/drm/nouveau/nouveau_connector.c:896:14: note: Access to field 'clock' results in a dereference of a null pointer (loaded from variable 'mode') duallink = mode->clock >= bios->fp.duallink_transition_clk; ^~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:1056:34: warning: Value stored to 'max_clock' during its initialization is never read [clang-analyzer-deadcode.DeadStores] unsigned int min_clock = 25000, max_clock = min_clock, clock = mode->clock; ^~~~~~~~~ ~~~~~~~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:1056:34: note: Value stored to 'max_clock' during its initialization is never read unsigned int min_clock = 25000, max_clock = min_clock, clock = mode->clock; ^~~~~~~~~ ~~~~~~~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:1283:4: warning: Value stored to 'entry' is never read [clang-analyzer-deadcode.DeadStores] entry |= (u32)ROM16(nv_connector->dcb[2]) << 16; ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/nouveau/nouveau_connector.c:1283:4: note: Value stored to 'entry' is never read entry |= (u32)ROM16(nv_connector->dcb[2]) << 16; ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Suppressed 9 warnings (8 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. 9 warnings generated. Suppressed 9 warnings (9 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. 8 warnings generated. Suppressed 8 warnings (8 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. 8 warnings generated. Suppressed 8 warnings (8 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. 8 warnings generated. Suppressed 8 warnings (8 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. 8 warnings generated. Suppressed 8 warnings (8 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. 8 warnings generated. Suppressed 8 warnings (8 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. 8 warnings generated. Suppressed 8 warnings (8 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. 8 warnings generated. Suppressed 8 warnings (8 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. 6 warnings generated. Suppressed 6 warnings (6 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. 6 warnings generated. Suppressed 6 warnings (6 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. 6 warnings generated. Suppressed 6 warnings (6 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. 6 warnings generated. Suppressed 6 warnings (6 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. 6 warnings generated. Suppressed 6 warnings (6 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. 5 warnings generated. Suppressed 5 warnings (5 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. 5 warnings generated. Suppressed 5 warnings (5 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. 8 warnings generated. >> drivers/misc/habanalabs/common/command_buffer.c:472:24: warning: Assigned >> value is garbage or undefined [clang-analyzer-core.uninitialized.Assign] args->out.device_va = device_va; ^ ~~~~~~~~~ drivers/misc/habanalabs/common/command_buffer.c:429:18: note: 'device_va' declared without an initial value u64 handle = 0, device_va; ^~~~~~~~~ drivers/misc/habanalabs/common/command_buffer.c:433:6: note: Assuming the condition is false if (!hl_device_operational(hdev, &status)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/misc/habanalabs/common/command_buffer.c:433:2: note: Taking false branch if (!hl_device_operational(hdev, &status)) { ^ drivers/misc/habanalabs/common/command_buffer.c:440:2: note: Control jumps to 'case 2:' at line 463 switch (args->in.op) { ^ drivers/misc/habanalabs/common/command_buffer.c:464:8: note: Calling 'hl_cb_info' rc = hl_cb_info(hdev, &hpriv->cb_mgr, args->in.cb_handle, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/misc/habanalabs/common/command_buffer.c:399:6: note: Assuming 'cb' is null if (!cb) { ^~~ drivers/misc/habanalabs/common/command_buffer.c:399:2: note: Taking true branch if (!cb) { ^ drivers/misc/habanalabs/common/command_buffer.c:400:3: note: Loop condition is false. Exiting loop dev_err(hdev->dev, ^ include/linux/dev_printk.h:144:2: note: expanded from macro 'dev_err' dev_printk_index_wrap(_dev_err, KERN_ERR, dev, dev_fmt(fmt), ##__VA_ARGS__) ^ include/linux/dev_printk.h:109:3: note: expanded from macro 'dev_printk_index_wrap' dev_printk_index_emit(level, fmt); \ ^ include/linux/dev_printk.h:105:2: note: expanded from macro 'dev_printk_index_emit' printk_index_subsys_emit("%s %s: ", level, fmt) ^ include/linux/printk.h:417:2: note: expanded from macro 'printk_index_subsys_emit' __printk_index_emit(fmt, level, subsys_fmt_prefix) ^ include/linux/printk.h:396:34: note: expanded from macro '__printk_index_emit' #define __printk_index_emit(...) do {} while (0) ^ drivers/misc/habanalabs/common/command_buffer.c:403:3: note: Control jumps to line 420 goto out; ^ drivers/misc/habanalabs/common/command_buffer.c:421:2: note: Returning without writing to '*device_va' return rc; ^ drivers/misc/habanalabs/common/command_buffer.c:464:8: note: Returning from 'hl_cb_info' rc = hl_cb_info(hdev, &hpriv->cb_mgr, args->in.cb_handle, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/misc/habanalabs/common/command_buffer.c:471:7: note: Assuming the condition is true if (args->in.flags & HL_CB_FLAGS_GET_DEVICE_VA) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/misc/habanalabs/common/command_buffer.c:471:3: note: Taking true branch if (args->in.flags & HL_CB_FLAGS_GET_DEVICE_VA) ^ drivers/misc/habanalabs/common/command_buffer.c:472:24: note: Assigned value is garbage or undefined args->out.device_va = device_va; ^ ~~~~~~~~~ Suppressed 7 warnings (7 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. 5 warnings generated. Suppressed 5 warnings (5 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. 5 warnings generated. Suppressed 5 warnings (5 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. 5 warnings generated. Suppressed 5 warnings (5 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. 5 warnings generated. Suppressed 5 warnings (5 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. 5 warnings generated. Suppressed 5 warnings (5 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. 6 warnings generated. drivers/usb/gadget/legacy/dbgp.c:377:3: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores] err = 0; ^ ~ drivers/usb/gadget/legacy/dbgp.c:377:3: note: Value stored to 'err' is never read err = 0; ^ ~ Suppressed 5 warnings (5 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. 6 warnings generated. Suppressed 6 warnings (6 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 (4 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. 7 warnings generated. drivers/hwmon/max6621.c:135:23: warning: The result of the left shift is undefined because the left operand is negative [clang-analyzer-core.UndefinedBinaryOperatorResult] return (val / 1000L) << MAX6621_REG_TEMP_SHIFT; ^ drivers/hwmon/max6621.c:316:2: note: Control jumps to 'case hwmon_temp:' at line 317 switch (type) { ^ drivers/hwmon/max6621.c:318:3: note: Control jumps to 'case hwmon_temp_offset:' at line 319 switch (attr) { vim +472 drivers/misc/habanalabs/common/command_buffer.c f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 423 be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 424 int hl_cb_ioctl(struct hl_fpriv *hpriv, void *data) be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 425 { be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 426 union hl_cb_args *args = data; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 427 struct hl_device *hdev = hpriv->hdev; 66a76401c50b26 drivers/misc/habanalabs/common/command_buffer.c Ofir Bitton 2020-10-05 428 enum hl_device_status status; b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 429 u64 handle = 0, device_va; f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 430 u32 usage_cnt = 0; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 431 int rc; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 432 66a76401c50b26 drivers/misc/habanalabs/common/command_buffer.c Ofir Bitton 2020-10-05 433 if (!hl_device_operational(hdev, &status)) { 3f5398cfbf051d drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-04-06 434 dev_warn_ratelimited(hdev->dev, 3f5398cfbf051d drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-04-06 435 "Device is %s. Can't execute CB IOCTL\n", 66a76401c50b26 drivers/misc/habanalabs/common/command_buffer.c Ofir Bitton 2020-10-05 436 hdev->status[status]); 3f5398cfbf051d drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-04-06 437 return -EBUSY; 3f5398cfbf051d drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-04-06 438 } 3f5398cfbf051d drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-04-06 439 be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 440 switch (args->in.op) { be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 441 case HL_CB_OP_CREATE: 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 442 if (args->in.cb_size > HL_MAX_CB_SIZE) { 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 443 dev_err(hdev->dev, 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 444 "User requested CB size %d must be less than %d\n", 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 445 args->in.cb_size, HL_MAX_CB_SIZE); 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 446 rc = -EINVAL; 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 447 } else { fa8641a14f2841 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-07 448 rc = hl_cb_create(hdev, &hpriv->cb_mgr, hpriv->ctx, ef6a0f6caa4a5d drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-07-09 449 args->in.cb_size, false, ef6a0f6caa4a5d drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-07-09 450 !!(args->in.flags & HL_CB_FLAGS_MAP), ef6a0f6caa4a5d drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-07-09 451 &handle); 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 452 } 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 453 be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 454 memset(args, 0, sizeof(*args)); be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 455 args->out.cb_handle = handle; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 456 break; 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 457 be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 458 case HL_CB_OP_DESTROY: be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 459 rc = hl_cb_destroy(hdev, &hpriv->cb_mgr, be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 460 args->in.cb_handle); be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 461 break; 39b425170d35ff drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2020-04-17 462 f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 463 case HL_CB_OP_INFO: f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 464 rc = hl_cb_info(hdev, &hpriv->cb_mgr, args->in.cb_handle, b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 465 args->in.flags, b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 466 &usage_cnt, b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 467 &device_va); b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 468 b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 469 memset(&args->out, 0, sizeof(args->out)); b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 470 b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 471 if (args->in.flags & HL_CB_FLAGS_GET_DEVICE_VA) b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 @472 args->out.device_va = device_va; b9d31cada7d9f1 drivers/misc/habanalabs/common/command_buffer.c farah kassabri 2021-11-02 473 else f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 474 args->out.usage_cnt = usage_cnt; f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 475 break; f44afb5b5a5d04 drivers/misc/habanalabs/common/command_buffer.c Tomer Tayar 2020-09-02 476 be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 477 default: be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 478 rc = -ENOTTY; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 479 break; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 480 } be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 481 be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 482 return rc; be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 483 } be5d926b5c1043 drivers/misc/habanalabs/command_buffer.c Oded Gabbay 2019-02-16 484 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected] _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
