diff mbox series

drm/virtio: set non-cross device blob uuid_state

Message ID 20210811040401.1264234-1-stevensd@chromium.org (mailing list archive)
State New, archived
Headers show
Series drm/virtio: set non-cross device blob uuid_state | expand

Commit Message

David Stevens Aug. 11, 2021, 4:04 a.m. UTC
Blob resources without the cross device flag don't have a uuid to share
with other virtio devices. When exporting such blobs, set uuid_state to
STATE_ERR so that virtgpu_virtio_get_uuid doesn't hang.

Signed-off-by: David Stevens <stevensd@chromium.org>
---
 drivers/gpu/drm/virtio/virtgpu_prime.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Gerd Hoffmann Aug. 12, 2021, 1:07 p.m. UTC | #1
On Wed, Aug 11, 2021 at 01:04:01PM +0900, David Stevens wrote:
> Blob resources without the cross device flag don't have a uuid to share
> with other virtio devices. When exporting such blobs, set uuid_state to
> STATE_ERR so that virtgpu_virtio_get_uuid doesn't hang.
> 
> Signed-off-by: David Stevens <stevensd@chromium.org>

Pushed to drm-misc-next.

thanks,
  Gerd
diff mbox series

Patch

diff --git a/drivers/gpu/drm/virtio/virtgpu_prime.c b/drivers/gpu/drm/virtio/virtgpu_prime.c
index 807a27a16365..e45dbf14b307 100644
--- a/drivers/gpu/drm/virtio/virtgpu_prime.c
+++ b/drivers/gpu/drm/virtio/virtgpu_prime.c
@@ -98,6 +98,8 @@  struct dma_buf *virtgpu_gem_prime_export(struct drm_gem_object *obj,
 		} else {
 			bo->uuid_state = STATE_ERR;
 		}
+	} else if (!(bo->blob_flags & VIRTGPU_BLOB_FLAG_USE_CROSS_DEVICE)) {
+		bo->uuid_state = STATE_ERR;
 	}
 
 	exp_info.ops = &virtgpu_dmabuf_ops.ops;