If mipi_dsi_device_add() fails, the refcount of device is not 0, the name allocated in dev_set_name() is leaked. Fix this by calling put_device(), so that it will be freed in callback function kobject_cleanup(). Fixes: 068a00233969 ("drm: Add MIPI DSI bus support") Signed-off-by: Yang Yingliang <yangyingliang@xxxxxxxxxx> --- 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 3ec02748d56f..431952f6fd25 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