understanding virtio-gpu

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello folks,


I'm currently trying to understand how the virtio-gpu driver actually
works and got a few noob questions:

1. virtio_gpu_pci_quirk():

  * what is the explicit framebuffer removal about ?

    Do virtio-gpu devices support several framebuffer types (but only
    one at a time) ? How does it happen that we can have that vga
    framebuffer standing in our way in the first place ?

  * why is it necessary to rename the device with "pci:" prefix ?

    since (IMHO) virtio is an actual bus, that may even exist in HW,
    but there're also several different virtio transports (got word that
    somebody's also working on an socket-based one), it smells very
    strange to me, making it look like a pci device.

    does it only work w/ pci transport ?
    what's the background of this ?

2. features[] array:

  * virgl seems only supported on little endian, and the comment tells
    that's because virgl is sending the command stream in native endian.

  * IMHO, this approach isn't entirely correct, since here we're just
    looking whether the driver/guest side is LE, but looking at the
    host/device side. otoh, it should still work if both sides are BE.

  * shouldn't we add some endianess handshake to the protocol ?
    maybe both should announce what's their native endianess and whether
    they're capable of doing the conversion, so they can aggree on what
    to do exactly ?


I'm currently trying to find ways for using virgl in containers instead
of VMs, so the container workload doesn't need to have any gpu specific
(userland) drivers anymore. Not sure whether I'll need special kernel
support for this at all.


thx,
--mtx

--
---
Hinweis: unverschlüsselte E-Mails können leicht abgehört und manipuliert
werden ! Für eine vertrauliche Kommunikation senden Sie bitte ihren
GPG/PGP-Schlüssel zu.
---
Enrico Weigelt, metux IT consult
Free software and Linux embedded engineering
info@xxxxxxxxx -- +49-151-27565287



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux