diff options
author | Brian Masney | 2019-06-03 03:01:31 +0200 |
---|---|---|
committer | Rob Clark | 2019-06-18 23:03:16 +0200 |
commit | d67f1b6d0e0be8240186e3cc998353e52ed6ea31 (patch) | |
tree | f586bef4a5373687d26f5e579fe499b1aa19ebd9 | |
parent | drm/msm/dsi: add protection against NULL dsi device (diff) | |
download | kernel-qcow2-linux-d67f1b6d0e0be8240186e3cc998353e52ed6ea31.tar.gz kernel-qcow2-linux-d67f1b6d0e0be8240186e3cc998353e52ed6ea31.tar.xz kernel-qcow2-linux-d67f1b6d0e0be8240186e3cc998353e52ed6ea31.zip |
drm/msm: correct attempted NULL pointer dereference in put_iova
put_iova() would attempt to dereference a NULL pointer via the
address space pointer when no IOMMU is present. Correct this by adding
the appropriate check.
Signed-off-by: Brian Masney <masneyb@onstation.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
-rw-r--r-- | drivers/gpu/drm/msm/msm_gem.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c index 35f55dd25994..d31d9f927887 100644 --- a/drivers/gpu/drm/msm/msm_gem.c +++ b/drivers/gpu/drm/msm/msm_gem.c @@ -352,8 +352,10 @@ put_iova(struct drm_gem_object *obj) WARN_ON(!mutex_is_locked(&msm_obj->lock)); list_for_each_entry_safe(vma, tmp, &msm_obj->vmas, list) { - msm_gem_purge_vma(vma->aspace, vma); - msm_gem_close_vma(vma->aspace, vma); + if (vma->aspace) { + msm_gem_purge_vma(vma->aspace, vma); + msm_gem_close_vma(vma->aspace, vma); + } del_vma(vma); } } |