drm/msm/dp: Free resources after unregistering them
authorBjorn Andersson <quic_bjorande@quicinc.com>
Mon, 12 Jun 2023 22:02:59 +0000 (15:02 -0700)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Thu, 15 Jun 2023 10:20:31 +0000 (13:20 +0300)
commitfa0048a4b1fa7a50c8b0e514f5b428abdf69a6f8
tree4dd78833128fca8c55215351f25ac63b4df8cb7b
parenta7bfb2ad2184a1fba78be35209b6019aa8cc8d4d
drm/msm/dp: Free resources after unregistering them

The DP component's unbind operation walks through the submodules to
unregister and clean things up. But if the unbind happens because the DP
controller itself is being removed, all the memory for those submodules
has just been freed.

Change the order of these operations to avoid the many use-after-free
that otherwise happens in this code path.

Fixes: c943b4948b58 ("drm/msm/dp: add displayPort driver support")
Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/542166/
Link: https://lore.kernel.org/r/20230612220259.1884381-1-quic_bjorande@quicinc.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/msm/dp/dp_display.c