On Fri, May 30, 2025 at 05:54:25PM +0800, Yongbang Shi wrote:
From: Baihan Li <libai...@huawei.com>

The local variable of irq name is passed to devm_request_threaded_irq(),
which will make request_irq failed. Using the global irq name instead
of it to fix.
This doesn't explain, why does it fail and which IRQ name is actually
expected.

The local variable is passed in request_irq (), and there will be use after 
free problem.


Fixes: b11bc1ae4658 ("drm/hisilicon/hibmc: Add MSI irq getting and requesting for 
HPD")
Signed-off-by: Baihan Li <libai...@huawei.com>
---
  drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 10 +++-------
  1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c 
b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
index 768b97f9e74a..4cdcc34070ee 100644
--- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
+++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c
@@ -32,7 +32,7 @@
DEFINE_DRM_GEM_FOPS(hibmc_fops); -static const char *g_irqs_names_map[HIBMC_MAX_VECTORS] = { "vblank", "hpd" };
+static const char *g_irqs_names_map[HIBMC_MAX_VECTORS] = { "hibmc-vblank", 
"hibmc-hpd" };
Please point to the corresponding IRQ names as currently implemented in
the upstream kernel.

Ok.


static irqreturn_t hibmc_interrupt(int irq, void *arg)
  {

Reply via email to