diff options
author | Luca Weiss <luca@z3ntu.xyz> | 2022-04-21 22:34:53 +0200 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2022-05-02 10:11:44 -0700 |
commit | 36a1d1bda77e1851bddfa9cf4e8ada94476dbaff (patch) | |
tree | 01c153a59f5e01b17fed397ba0510c894446d3d9 /drivers/gpu/drm/msm/adreno/adreno_gpu.c | |
parent | f1fc2b87de4719cfa8e193e0746cc524dd9f7472 (diff) | |
download | linux-stable-36a1d1bda77e1851bddfa9cf4e8ada94476dbaff.tar.gz linux-stable-36a1d1bda77e1851bddfa9cf4e8ada94476dbaff.tar.bz2 linux-stable-36a1d1bda77e1851bddfa9cf4e8ada94476dbaff.zip |
drm/msm: Fix null pointer dereferences without iommu
Check if 'aspace' is set before using it as it will stay null without
IOMMU, such as on msm8974.
Fixes: bc2112583a0b ("drm/msm/gpu: Track global faults per address-space")
Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Link: https://lore.kernel.org/r/20220421203455.313523-1-luca@z3ntu.xyz
Signed-off-by: Rob Clark <robdclark@chromium.org>
Diffstat (limited to 'drivers/gpu/drm/msm/adreno/adreno_gpu.c')
-rw-r--r-- | drivers/gpu/drm/msm/adreno/adreno_gpu.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c index 4caae0229518..4e665c806a14 100644 --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c @@ -276,7 +276,10 @@ int adreno_get_param(struct msm_gpu *gpu, struct msm_file_private *ctx, *value = 0; return 0; case MSM_PARAM_FAULTS: - *value = gpu->global_faults + ctx->aspace->faults; + if (ctx->aspace) + *value = gpu->global_faults + ctx->aspace->faults; + else + *value = gpu->global_faults; return 0; case MSM_PARAM_SUSPENDS: *value = gpu->suspend_count; |