This restriction applies to mapping of _NO_SHARE objs in the kms vm as
well as importing/exporting BOs. Since the DPU has it's own VM, scanout
counts as "exporting" a BO from outside of it's host VM.
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/713897/
Message-ID: <
20260324220519.
1221471-1-robin.clark@oss.qualcomm.com>
struct msm_gem_vma *vma;
int ret;
+ /* _NO_SHARE objs cannot be mapped outside of their "host" vm: */
+ if (obj && (to_msm_bo(obj)->flags & MSM_BO_NO_SHARE) &&
+ GEM_WARN_ON(obj->resv != drm_gpuvm_resv(gpuvm))) {
+ return ERR_PTR(-EINVAL);
+ }
+
drm_gpuvm_resv_assert_held(&vm->base);
vma = kzalloc(sizeof(*vma), GFP_KERNEL);