drivers/gpu/drm/msm/dsi/dsi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
The of_find_device_by_node() takes a reference to the underlying device
structure, we should release that reference.
Detected by coccinelle with the following ERROR:
./drivers/gpu/drm/msm/dsi/dsi.c:50:1-7: ERROR: missing put_device; call
of_find_device_by_node on line 32, but without a corresponding object
release within this function.
Signed-off-by: Ran Sun <sunran001@208suo.com>
---
drivers/gpu/drm/msm/dsi/dsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/dsi/dsi.c
b/drivers/gpu/drm/msm/dsi/dsi.c
index 81461e8852a7..5e3cc287f0d3 100644
--- a/drivers/gpu/drm/msm/dsi/dsi.c
+++ b/drivers/gpu/drm/msm/dsi/dsi.c
@@ -46,7 +46,7 @@ static int dsi_get_phy(struct msm_dsi *msm_dsi)
DRM_DEV_ERROR(&pdev->dev, "%s: phy driver is not ready\n",
__func__);
return -EPROBE_DEFER;
}
- put_device(&pdev->dev);
+ put_device(&phy_pdev->dev);
return 0;
}
On 18/07/2023 11:33, sunran001@208suo.com wrote: > The of_find_device_by_node() takes a reference to the underlying device > structure, we should release that reference. > > Detected by coccinelle with the following ERROR: > ./drivers/gpu/drm/msm/dsi/dsi.c:50:1-7: ERROR: missing put_device; call > of_find_device_by_node on line 32, but without a corresponding object > release within this function. Still NAK, the device should not be put. It is handled in dsi_destroy(), as I wrote in the previous email. Please stop. Note, your patch lacks versioning and changelog. Please care to read Documentation/process/submitting-patches.rst before sending your changes. > > Signed-off-by: Ran Sun <sunran001@208suo.com> > --- > drivers/gpu/drm/msm/dsi/dsi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/msm/dsi/dsi.c b/drivers/gpu/drm/msm/dsi/dsi.c > index 81461e8852a7..5e3cc287f0d3 100644 > --- a/drivers/gpu/drm/msm/dsi/dsi.c > +++ b/drivers/gpu/drm/msm/dsi/dsi.c > @@ -46,7 +46,7 @@ static int dsi_get_phy(struct msm_dsi *msm_dsi) > DRM_DEV_ERROR(&pdev->dev, "%s: phy driver is not ready\n", > __func__); > return -EPROBE_DEFER; > } > - put_device(&pdev->dev); > + put_device(&phy_pdev->dev); > return 0; > } -- With best wishes Dmitry
© 2016 - 2026 Red Hat, Inc.