[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [PATCH 1/2] virtio-gpu: add resource create blob
On Tue, Apr 21, 2020 at 05:55:30PM -0700, Gurchetan Singh wrote: > Blob resources are size-based containers for host, guest, or > host+guest allocations. These resources are designed with > mulit-process 3D support in mind, but also usable in virtio-gpu 2d > with system memory allocation (also known as dumb allocation, but > since that's reserved in a DRM/KMS world, went with system). Thanks for picking this up. > +Host allocations depend on whether VIRTIO_GPU_F_VIRGL is supported. > +If VIRTIO_GPU_F_VIRGL is not supported, then: > + > + \begin{itemize*} > + \item \field{blob_mem} MUST be VIRTIO_GPU_BLOB_MEM_HOSTSYS for host-only > + blob resources > + \item \field{blob_mem} MUST be VIRTIO_GPU_BLOB_MEM_HOSTSYS_GUEST for > + default blob resources > + \end{itemize*} > + > +For the above above cases, host system memory is allocated by the device. > + > +If VIRTIO_GPU_F_VIRGL is supported, then: > + > + \begin{itemize*} > + \item \field{blob_mem} MUST be VIRTIO_GPU_BLOB_MEM_HOST3D for host-only > + blob resources > + \item \field{blob_mem} MUST be VIRTIO_GPU_BLOB_MEM_HOST3D_GUEST for > + default resources > + \end{itemize*} Do we need separate items (HOSTSYS/HOST3D) for these? Shouldn't this be a host implementation detail the guest doesn't need to worry about? Also: Why HOST3D + HOST3D_GUEST? Isn't that covered by the use flags (MAPPABLE) already? > +If VIRTIO_GPU_F_VIRGL is set, both VIRTIO_GPU_CMD_TRANSFER_TO_HOST_3D > +and VIRTIO_GPU_CMD_TRANSFER_FROM_HOST_3D may be used to update the > +resource. There is no restriction on the image/buffer view the driver > +has on the blob resource. I don't think VIRTIO_GPU_CMD_TRANSFER_TO_HOST_3D is going to work if the resource has no format attached. I had a TRANSFER_BLOB command because of that. > +VIRTIO_GPU_CMD_TRANSFER_TO_HOST_2D, VIRTIO_GPU_CMD_SET_SCANOUT and > +VIRTIO_GPU_CMD_RESOURCE_FLUSH MAY be used with blob resources as well, > +subject to the following restrictions: Same problem with VIRTIO_GPU_CMD_SET_SCANOUT, it expects the resource has a format attached which isn't the case for blob resources ... cheers, Gerd
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]