]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/msm: potential error pointer dereference in init()
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 4 Oct 2021 10:38:06 +0000 (13:38 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Nov 2021 10:04:07 +0000 (11:04 +0100)
[ Upstream commit b6816441a14bbe356ba8590de79cfea2de6a085c ]

The msm_iommu_new() returns error pointers on failure so check for that
to avoid an Oops.

Fixes: ccac7ce373c1 ("drm/msm: Refactor address space initialization")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Abhinav Kumar <abhinavk@codeaurora.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20211004103806.GD25015@kili
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c

index 4fd913522931b56997e28f86aa4eb5f147480e20..5489a3ae2bedbed54ee55a0e1831cafa745865d3 100644 (file)
@@ -896,6 +896,10 @@ static int _dpu_kms_mmu_init(struct dpu_kms *dpu_kms)
                return 0;
 
        mmu = msm_iommu_new(dpu_kms->dev->dev, domain);
+       if (IS_ERR(mmu)) {
+               iommu_domain_free(domain);
+               return PTR_ERR(mmu);
+       }
        aspace = msm_gem_address_space_create(mmu, "dpu1",
                0x1000, 0x100000000 - 0x1000);