In mipi_dsi_device_alloc(), it calls device_initialize(&dsi->dev);
We need to use put_device() instead freeing directly.
Fixes: 068a002 ("drm: Add MIPI DSI bus support")
Signed-off-by: Miaoqian Lin <[email protected]>
---
drivers/gpu/drm/drm_mipi_dsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/drm_mipi_dsi.c b/drivers/gpu/drm/drm_mipi_dsi.c
index c40bde96cfdf..8cc8deca006f 100644
--- a/drivers/gpu/drm/drm_mipi_dsi.c
+++ b/drivers/gpu/drm/drm_mipi_dsi.c
@@ -228,7 +228,7 @@ mipi_dsi_device_register_full(struct mipi_dsi_host *host,
ret = mipi_dsi_device_add(dsi);
if (ret) {
drm_err(host, "failed to add DSI device %d\n", ret);
- kfree(dsi);
+ put_device(&dsi->dev);
return ERR_PTR(ret);
}
--
2.25.1
On 01.06.2022 14:40, Miaoqian Lin wrote:
> In mipi_dsi_device_alloc(), it calls device_initialize(&dsi->dev);
> We need to use put_device() instead freeing directly.
>
> Fixes: 068a002 ("drm: Add MIPI DSI bus support")
> Signed-off-by: Miaoqian Lin <[email protected]>
Looks correct.
Reviewed-by: Andrzej Hajda <[email protected]>
Regards
Andrzej
> ---
> drivers/gpu/drm/drm_mipi_dsi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/drm_mipi_dsi.c b/drivers/gpu/drm/drm_mipi_dsi.c
> index c40bde96cfdf..8cc8deca006f 100644
> --- a/drivers/gpu/drm/drm_mipi_dsi.c
> +++ b/drivers/gpu/drm/drm_mipi_dsi.c
> @@ -228,7 +228,7 @@ mipi_dsi_device_register_full(struct mipi_dsi_host *host,
> ret = mipi_dsi_device_add(dsi);
> if (ret) {
> drm_err(host, "failed to add DSI device %d\n", ret);
> - kfree(dsi);
> + put_device(&dsi->dev);
> return ERR_PTR(ret);
> }
>