Implement basic `virtio` GPU driver
Author: klangeCreated Jul 26, 2026Updated Jul 29, 2026
LabelsgraphicskernelYutani
Implement a basic driver for the virtio GPU display device in QEMU.
As discussed in #464, the typical "dumb framebuffer" display devices we normally support in QEMU all potentially suffer from tearing. They have no mechanism to reliably perform stable display flips, inherent in their lack of V-Sync locking and the fact that the VM simply tries to blit out the framebuffer contents whenever it notices a change through dirty bits. The virtio GPU does not suffer from this problem as it uses a "guest to host" command to instigate display refreshes, which can be (and seemingly is) synchronized on at least the Gtk frontend.
The driver should support:
- Basic modesetting
- An interface for the compositor to signal a display refresh
Nice to haves would be:
- Mouse pointer integration, which we already have infrastructure for (for VirtualBox)
Source: klange/toaruos