From: kernel test robot <lkp@intel.com>
To: Guangshuo Li <lgs201920130244@gmail.com>,
Vikash Garodia <vikash.garodia@oss.qualcomm.com>,
Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>,
Bryan O'Donoghue <bod@kernel.org>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Hans Verkuil <hverkuil@kernel.org>,
Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
linux-media@vger.kernel.org,
Guangshuo Li <lgs201920130244@gmail.com>,
stable@vger.kernel.org
Subject: Re: [PATCH] media: venus: avoid HFI resource leak on IRQ request failure
Date: Wed, 16 Sep 2026 13:17:23 +0800 [thread overview]
Message-ID: <202609161343.qH6ypqkG-lkp@intel.com> (raw)
In-Reply-To: <20260915123009.2420780-1-lgs201920130244@gmail.com>
Hi Guangshuo,
kernel test robot noticed the following build warnings:
[auto build test WARNING on linuxtv-media-pending/master]
[also build test WARNING on media-tree/master linus/master v7.3-rc3 next-20260914]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Guangshuo-Li/media-venus-avoid-HFI-resource-leak-on-IRQ-request-failure/20260915-203009
base: https://git.linuxtv.org/media-ci/media-pending.git master
patch link: https://lore.kernel.org/r/20260915123009.2420780-1-lgs201920130244%40gmail.com
patch subject: [PATCH] media: venus: avoid HFI resource leak on IRQ request failure
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20260916/202609161343.qH6ypqkG-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260916/202609161343.qH6ypqkG-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609161343.qH6ypqkG-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/media/platform/qcom/venus/core.c:446:3: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
446 | enable_irq(core->irq);
| ^
drivers/media/platform/qcom/venus/core.c:443:2: note: previous statement is here
443 | if (ret)
| ^
1 warning generated.
vim +/if +446 drivers/media/platform/qcom/venus/core.c
379
380 static int venus_probe(struct platform_device *pdev)
381 {
382 struct device *dev = &pdev->dev;
383 struct venus_core *core;
384 int ret;
385
386 core = devm_kzalloc(dev, sizeof(*core), GFP_KERNEL);
387 if (!core)
388 return -ENOMEM;
389
390 core->dev = dev;
391
392 core->base = devm_platform_ioremap_resource(pdev, 0);
393 if (IS_ERR(core->base))
394 return PTR_ERR(core->base);
395
396 core->video_path = devm_of_icc_get(dev, "video-mem");
397 if (IS_ERR(core->video_path))
398 return PTR_ERR(core->video_path);
399
400 core->cpucfg_path = devm_of_icc_get(dev, "cpu-cfg");
401 if (IS_ERR(core->cpucfg_path))
402 return PTR_ERR(core->cpucfg_path);
403
404 core->irq = platform_get_irq(pdev, 0);
405 if (core->irq < 0)
406 return core->irq;
407
408 core->res = of_device_get_match_data(dev);
409 if (!core->res)
410 return -ENODEV;
411
412 mutex_init(&core->pm_lock);
413
414 core->pm_ops = venus_pm_get(core->res->hfi_version);
415 if (!core->pm_ops)
416 return -ENODEV;
417
418 if (core->pm_ops->core_get) {
419 ret = core->pm_ops->core_get(core);
420 if (ret)
421 return ret;
422 }
423
424 ret = dma_set_mask_and_coherent(dev, core->res->dma_mask);
425 if (ret)
426 goto err_core_put;
427
428 dma_set_max_seg_size(dev, UINT_MAX);
429
430 INIT_LIST_HEAD(&core->instances);
431 mutex_init(&core->lock);
432 INIT_DELAYED_WORK(&core->work, venus_sys_error_handler);
433 init_waitqueue_head(&core->sys_err_done);
434
435 ret = devm_request_threaded_irq(dev, core->irq, hfi_isr,
436 venus_isr_thread,
437 IRQF_TRIGGER_HIGH | IRQF_ONESHOT |
438 IRQF_NO_AUTOEN, "venus", core);
439 if (ret)
440 goto err_core_put;
441
442 ret = hfi_create(core, &venus_core_ops);
443 if (ret)
444 goto err_core_put;
445
> 446 enable_irq(core->irq);
447
448 venus_assign_register_offsets(core);
449
450 ret = v4l2_device_register(dev, &core->v4l2_dev);
451 if (ret)
452 goto err_hfi_destroy;
453
454 platform_set_drvdata(pdev, core);
455
456 pm_runtime_enable(dev);
457
458 ret = pm_runtime_get_sync(dev);
459 if (ret < 0)
460 goto err_runtime_disable;
461
462 ret = venus_firmware_init(core);
463 if (ret)
464 goto err_runtime_disable;
465
466 ret = venus_boot(core);
467 if (ret)
468 goto err_firmware_deinit;
469
470 ret = venus_firmware_cfg(core);
471 if (ret)
472 goto err_venus_shutdown;
473
474 ret = hfi_core_resume(core, true);
475 if (ret)
476 goto err_venus_shutdown;
477
478 ret = hfi_core_init(core);
479 if (ret)
480 goto err_venus_shutdown;
481
482 ret = venus_firmware_check(core);
483 if (ret)
484 goto err_core_deinit;
485
486 if (core->res->dec_nodename || core->res->enc_nodename) {
487 ret = venus_add_dynamic_nodes(core);
488 if (ret)
489 goto err_core_deinit;
490 }
491
492 ret = of_platform_populate(dev->of_node, NULL, NULL, dev);
493 if (ret)
494 goto err_remove_dynamic_nodes;
495
496 ret = venus_enumerate_codecs(core, VIDC_SESSION_TYPE_DEC);
497 if (ret)
498 goto err_of_depopulate;
499
500 ret = venus_enumerate_codecs(core, VIDC_SESSION_TYPE_ENC);
501 if (ret)
502 goto err_of_depopulate;
503
504 ret = pm_runtime_put_sync(dev);
505 if (ret) {
506 pm_runtime_get_noresume(dev);
507 goto err_of_depopulate;
508 }
509
510 venus_dbgfs_init(core);
511
512 return 0;
513
514 err_of_depopulate:
515 of_platform_depopulate(dev);
516 err_remove_dynamic_nodes:
517 venus_remove_dynamic_nodes(core);
518 err_core_deinit:
519 hfi_core_deinit(core, false);
520 err_venus_shutdown:
521 venus_shutdown(core);
522 err_firmware_deinit:
523 venus_firmware_deinit(core);
524 err_runtime_disable:
525 pm_runtime_put_noidle(dev);
526 pm_runtime_disable(dev);
527 pm_runtime_set_suspended(dev);
528 v4l2_device_unregister(&core->v4l2_dev);
529 err_hfi_destroy:
530 hfi_destroy(core);
531 err_core_put:
532 if (core->pm_ops->core_put)
533 core->pm_ops->core_put(core);
534 return ret;
535 }
536
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2026-09-16 5:18 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-15 12:30 [PATCH] media: venus: avoid HFI resource leak on IRQ request failure Guangshuo Li
2026-09-16 4:03 ` kernel test robot
2026-09-16 5:17 ` kernel test robot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202609161343.qH6ypqkG-lkp@intel.com \
--to=lkp@intel.com \
--cc=bod@kernel.org \
--cc=dikshita.agarwal@oss.qualcomm.com \
--cc=hverkuil@kernel.org \
--cc=jorge.ramirez@oss.qualcomm.com \
--cc=lgs201920130244@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=mchehab@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=stable@vger.kernel.org \
--cc=vikash.garodia@oss.qualcomm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.