]> git.hungrycats.org Git - linux/commitdiff
drm/msm/gem: Validate lazy VM in GEM_NEW
authorRob Clark <robin.clark@oss.qualcomm.com>
Wed, 29 Jul 2026 15:55:50 +0000 (08:55 -0700)
committerRob Clark <robin.clark@oss.qualcomm.com>
Wed, 29 Jul 2026 18:56:02 +0000 (11:56 -0700)
Otherwise creating a _NO_SHARE BO before any BOs are mapped could cause
a NPE.

Reported-by: Sashiko <sashiko-bot@kernel.org>
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/743104/
Message-ID: <20260729155609.20190-14-robin.clark@oss.qualcomm.com>

drivers/gpu/drm/msm/msm_gem.c

index 535c6e1acb3c1c0b11623662245024cf4f6e8f67..de4e60e28a7110be432f701c02cdbd8b2f9c79ed 100644 (file)
@@ -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);
        }