From be267c80f722dfc2773b164cc4bf10fd67dcd8fb Mon Sep 17 00:00:00 2001 From: Sankeerth Billakanti Date: Mon, 23 Dec 2019 10:11:15 +0530 Subject: [PATCH] disp: msm: dp: reset panel object for connector when uninstalled When panel object for a dp connector is destroyed, the instance of dp_panel in the connector object is made NULL to prevent further panel object dereferences. Change-Id: I63409ab8c470f14cf9c032e373cb0c0872577504 Signed-off-by: Sankeerth Billakanti Signed-off-by: Tatenda Chipeperekwa --- msm/dp/dp_panel.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/msm/dp/dp_panel.c b/msm/dp/dp_panel.c index b9ee5cb9a3..6d92a6ae19 100644 --- a/msm/dp/dp_panel.c +++ b/msm/dp/dp_panel.c @@ -3069,6 +3069,7 @@ error: void dp_panel_put(struct dp_panel *dp_panel) { struct dp_panel_private *panel; + struct sde_connector *sde_conn; if (!dp_panel) return; @@ -3076,5 +3077,9 @@ void dp_panel_put(struct dp_panel *dp_panel) panel = container_of(dp_panel, struct dp_panel_private, dp_panel); dp_panel_edid_deregister(panel); + sde_conn = to_sde_connector(dp_panel->connector); + if (sde_conn) + sde_conn->drv_panel = NULL; + devm_kfree(panel->dev, panel); }