Re: [PATCH v1] Revert "drm/virtio: Allow importing prime buffers when 3D is enabled"

From: Val Packett

Date: Tue Sep 15 2026 - 17:22:10 EST



On 9/11/26 11:42 AM, Dmitry Osipenko wrote:
Guest userspace may import udmabuf to vrend. Vrend doesn't support guest
blobs, and thus, further 3d operations with the imported blob are failing.
Typical scenario of the problem shown with mouse cursor RGBA image imported
into virtio-gpu, which previously was rejected by virtio-gpu driver.
Revert enabling guest blobs importing into vrend to fix the regression.

Link: https://gitlab.freedesktop.org/virgl/virglrenderer/-/work_items/674
Fixes: df4dc947c46b ("drm/virtio: Allow importing prime buffers when 3D is enabled")
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@xxxxxxxxxxxxx>
---
drivers/gpu/drm/virtio/virtgpu_prime.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/virtio/virtgpu_prime.c b/drivers/gpu/drm/virtio/virtgpu_prime.c
index 149e6bcb5878..ebf471044d06 100644
--- a/drivers/gpu/drm/virtio/virtgpu_prime.c
+++ b/drivers/gpu/drm/virtio/virtgpu_prime.c
@@ -349,7 +349,7 @@ struct drm_gem_object *virtgpu_gem_prime_import(struct drm_device *dev,
}
}
- if (!vgdev->has_resource_blob)
+ if (!vgdev->has_resource_blob || vgdev->has_virgl_3d)
return drm_gem_prime_import(dev, buf);
bo = kzalloc_obj(*bo);

Oops, right, didn't think the back-compat issues all the way through on that one..

Reviewed-by: Val Packett <val@xxxxxxxxxxxxxxxxxxxxxx>


BTW, to clarify wrt the original use case this was intended for— I got it all working, but it adds new feature flags:

https://lore.kernel.org/virtio-comment/20260903021442.423274-1-val@xxxxxxxxxxxxxxxxxxxxxx/

So I'll "unlock" this again in new patches but not unconditionally of course. Rather, gated on the new F_CREATE_GUEST_HANDLE flag which would indicate that the device backend *does* support creating guest blobs with host handles (dmabufs).


Thanks,
~val