Commit a1a56721 authored by Gurchetan Singh's avatar Gurchetan Singh 💬
Browse files

virgl: honor winsys supplied metadata

To truly to do this correctly, we'll have to fix the discrepancy between
drm_virtgpu_3d_transfer_to_host and virtio_gpu_transfer_host_3d. However,
this is a good starting point.

Since virtio-gpu only supports self-import and export, this should be fine.
Let's only do WINSYS_HANDLE_TYPE_FD for this currently.

Reviewed by: Robert Tarasov <tutankhamen@chromium.org>
parent 9bde8f3a
Pipeline #68038 passed with stages
in 23 minutes and 29 seconds
......@@ -313,10 +313,15 @@ virgl_drm_winsys_resource_create_handle(struct virgl_winsys *qws,
struct virgl_hw_res *res = NULL;
uint32_t handle = whandle->handle;
if (whandle->offset != 0) {
if (whandle->offset != 0 && whandle->type == WINSYS_HANDLE_TYPE_SHARED) {
_debug_printf("attempt to import unsupported winsys offset %u\n",
whandle->offset);
return NULL;
} else if (whandle->type == WINSYS_HANDLE_TYPE_FD) {
*plane = whandle->plane;
*stride = whandle->stride;
*plane_offset = whandle->offset;
*modifier = whandle->modifier;
}
mtx_lock(&qdws->bo_handles_mutex);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment