aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/805-display-0046-MLK-22171-drm-imx-Avoid-leaking-dangling-pointer-dev.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/layerscape/patches-5.4/805-display-0046-MLK-22171-drm-imx-Avoid-leaking-dangling-pointer-dev.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/805-display-0046-MLK-22171-drm-imx-Avoid-leaking-dangling-pointer-dev.patch37
1 files changed, 0 insertions, 37 deletions
diff --git a/target/linux/layerscape/patches-5.4/805-display-0046-MLK-22171-drm-imx-Avoid-leaking-dangling-pointer-dev.patch b/target/linux/layerscape/patches-5.4/805-display-0046-MLK-22171-drm-imx-Avoid-leaking-dangling-pointer-dev.patch
deleted file mode 100644
index b28f7b172c..0000000000
--- a/target/linux/layerscape/patches-5.4/805-display-0046-MLK-22171-drm-imx-Avoid-leaking-dangling-pointer-dev.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 98917e88ec975eee0194ca011479e507029009ae Mon Sep 17 00:00:00 2001
-From: Liu Ying <victor.liu@nxp.com>
-Date: Tue, 30 Jul 2019 13:13:16 +0800
-Subject: [PATCH] MLK-22171 drm/imx: Avoid leaking dangling pointer
- dev->driver_data to PM ops
-
-In case ->bind() fails, we should avoid leaking dangling pointer
-dev->driver_data which is set by dev_set_drvdata(), otherwise
-it would be leaked, and seen/dereferenced by PM ops, thus hang
-happens. Moving dev_set_drvdata() down just before ->bind()
-successfully returns may address this issue.
-
-Signed-off-by: Liu Ying <victor.liu@nxp.com>
----
- drivers/gpu/drm/imx/imx-drm-core.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/gpu/drm/imx/imx-drm-core.c
-+++ b/drivers/gpu/drm/imx/imx-drm-core.c
-@@ -239,8 +239,6 @@ static int imx_drm_bind(struct device *d
- if (ret)
- goto err_kms;
-
-- dev_set_drvdata(dev, drm);
--
- /* Now try and bind all our sub-components */
- ret = component_bind_all(dev, drm);
- if (ret)
-@@ -266,6 +264,8 @@ static int imx_drm_bind(struct device *d
-
- drm_fbdev_generic_setup(drm, legacyfb_depth);
-
-+ dev_set_drvdata(dev, drm);
-+
- return 0;
-
- err_poll_fini: