Implement VirtIO PCI transport layer
@shengwen-tw ci sta già lavorando.
Dal 17/6/2025.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Background
During the development of VirtIO GPU in #34, a critical issue was identified: applications leveraging Mesa3D (e.g., glxgears, kmscube) consistently fall back to software rendering (softpipe), despite a correct configuration of X11, Mesa3D, and a host virglrenderer.
Analysis suggests this behavior is likely due to the current implementation of VirtIO GPU being based on VirtIO MMIO (registered as a platform device via the device tree), rather than utilizing the VirtIO PCI transport layer. Key observations include:
- GLX/X11 path: Mesa3D does not load
virtio_gpu_dri.sobecause Xorg fails to initializeDRI2. - Xorg logs: The GPU is not recognized as a PCI device (
no primary bus or device found), which prevents DRI2 from initializing and causes a fallback to the software renderer (swrast).
[ 29.010] (II) Platform probe for /sys/devices/platform/soc@F0000000/f4800000.virtio/drm/card0
[ 29.018] (II) no primary bus or device found
[ 29.018] falling back to /sys/devices/platform/soc@F0000000/f4800000.virtio/drm/card0
...
[ 29.354] (II) modeset(0): using drv /dev/dri/card0
...
[ 29.666] (II) AIGLX: Screen 0 is not DRI2 capable
[ 31.222] (II) IGLX: Loaded and initialized swrast
Proposal
To resolve this limitation and enable proper VirGL hardware acceleration, I propose implementing a VirtIO PCI transport layer for VirtIO GPU.
- Lingua principale
- C
- Stelle
- 313
- Fork
- 75
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di sysprog21/semu
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
-
Implement VirtIO sound deviceForse di nuovo libera @Cuda-Chen l’ha presa 795 giorni fa e non c’è nessuna pull request aperta. Aperta
-
Support PMEMAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
-
Run semu inside web browser via WebAssembly translationForse di nuovo libera @ChinYikMing l’ha presa 1010 giorni fa e non c’è nessuna pull request aperta. Aperta
sysprog21/semu#38 · 11 commenti · 1 reazione · 1 assegnatario ·
Tutte le issue di sysprog21/semu
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
yunusemreyl/omen-space#337 ·
I maintainer di solito rispondono entro 1 giorno
-
dependency component: oneMKL module: dpclang
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
intel/torch-xpu-ops#5880 ·
I maintainer di solito rispondono entro 2 giorni
-
area/ci-build bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
DarkFlippers/qUnleashed#423 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
CVE-2026-111497Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
fink/fink-distributions#1322 ·