drm/imx/lcdc: Fix double-free of driver data
[ Upstream commit ff3670877e7c73d06c2a835d9abb62efcae0145c ]
The struct imx_lcdc driver data is allocated using devm_drm_dev_alloc()
so it must not be explicitly kfree()d.
Also drm_kms_helper_poll_fini() should not be called as there is no
matching drm_kms_helper_poll_init(). So drop the release function
completely.
Fixes: c87e859cde
("drm/imx/lcdc: Implement DRM driver for imx25")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230706092731.2630232-1-u.kleine-koenig@pengutronix.de
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
417d134e72
commit
9c010be07f
|
@ -342,21 +342,12 @@ static const struct drm_mode_config_helper_funcs imx_lcdc_mode_config_helpers =
|
|||
.atomic_commit_tail = drm_atomic_helper_commit_tail_rpm,
|
||||
};
|
||||
|
||||
static void imx_lcdc_release(struct drm_device *drm)
|
||||
{
|
||||
struct imx_lcdc *lcdc = imx_lcdc_from_drmdev(drm);
|
||||
|
||||
drm_kms_helper_poll_fini(drm);
|
||||
kfree(lcdc);
|
||||
}
|
||||
|
||||
DEFINE_DRM_GEM_DMA_FOPS(imx_lcdc_drm_fops);
|
||||
|
||||
static struct drm_driver imx_lcdc_drm_driver = {
|
||||
.driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_ATOMIC,
|
||||
.fops = &imx_lcdc_drm_fops,
|
||||
DRM_GEM_DMA_DRIVER_OPS_VMAP,
|
||||
.release = imx_lcdc_release,
|
||||
.name = "imx-lcdc",
|
||||
.desc = "i.MX LCDC driver",
|
||||
.date = "20200716",
|
||||
|
|
Loading…
Reference in New Issue