[virglrenderer-devel] multiprocess model and GL

Gerd Hoffmann kraxel at redhat.com
Fri Jan 31 10:41:24 UTC 2020


  Hi,

memory-v4 branch pushed.

Went with the single-ioctl approach.  Renamed back to CREATE as we don't
have separate "allocate resource id" and "initialize resource" steps any
more.

So, virgl/vulkan resources would be created via execbuffer, get an
object id attached to them so they can be referenced, then we'll create
a resource from that.  The single ioctl which will generate multiple
virtio commands.

Dumb resources will be created with the same ioctl, just with the DUMB
instead of the EXECBUFFER flag set.  The three execbuffer fields will be
unused.

To be discussed:

(1) Do we want/need both VIRTGPU_RESOURCE_FLAG_STORAGE_SHARED_ALLOW and
    VIRTGPU_RESOURCE_FLAG_STORAGE_SHARED_REQUIRE?

(2) How to integrate gbm/gralloc allocations best?  Have a
    VIRTGPU_RESOURCE_FLAG_ALLOC_GBM, then pass args in the execbuffer?
    Or better have a separate RESOURCE_CREATE_GBM ioctl/command and
    define everything we need in the virtio spec?

cheers,
  Gerd



More information about the virglrenderer-devel mailing list