]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/msm/dpu: fix error pointer dereference in msm_kms_init_aspace()
authorDan Carpenter <dan.carpenter@linaro.org>
Tue, 25 Feb 2025 07:30:26 +0000 (10:30 +0300)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Wed, 5 Mar 2025 02:34:13 +0000 (04:34 +0200)
If msm_gem_address_space_create() fails, then return right away.
Otherwise it leads to a Oops when we dereference "aspace" on the next
line.

Fixes: eabba31a839a ("drm/msm: register a fault handler for display mmu faults")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/639357/
Link: https://lore.kernel.org/r/3221e88c-3351-42e6-aeb1-69f4f014b509@stanley.mountain
[DB: fixed commit id]
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/msm/msm_kms.c

index b877278888e6228a84773e0dd6c4fc8ce24b2de6..35d5397e73b4c5cb90b1770e8570277e782be7ec 100644 (file)
@@ -209,6 +209,7 @@ struct msm_gem_address_space *msm_kms_init_aspace(struct drm_device *dev)
        if (IS_ERR(aspace)) {
                dev_err(mdp_dev, "aspace create, error %pe\n", aspace);
                mmu->funcs->destroy(mmu);
+               return aspace;
        }
 
        msm_mmu_set_fault_handler(aspace->mmu, kms, msm_kms_fault_handler);