Otherwise creating a _NO_SHARE BO before any BOs are mapped could cause
a NPE.

Reported-by: Sashiko <[email protected]>
Signed-off-by: Rob Clark <[email protected]>
---
 drivers/gpu/drm/msm/msm_gem.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
index 535c6e1acb3c..de4e60e28a71 100644
--- a/drivers/gpu/drm/msm/msm_gem.c
+++ b/drivers/gpu/drm/msm/msm_gem.c
@@ -1140,9 +1140,13 @@ int msm_gem_new_handle(struct drm_device *dev, struct 
drm_file *file,
        int ret;
 
        if (flags & MSM_BO_NO_SHARE) {
+               struct msm_drm_private *priv = dev->dev_private;
                struct msm_context *ctx = file->driver_priv;
                struct drm_gpuvm *vm = msm_context_vm(dev, ctx);
 
+               if (!priv->gpu || !vm)
+                       return UERR(EINVAL, dev, "not supported with shared 
VM");
+
                r_obj = drm_gpuvm_resv_obj(vm);
        }
 
-- 
2.55.0

Reply via email to