virtio-gpu + Venus: Tested Matrix

Tracking what status the tests cases work in

Hardware/Platform

Notes

QEMU Branch

VirGL Venus

Xen VirtIO Impl

vkcube-wayland

vulkaninfo --summary

Hardware/Platform

Notes

QEMU Branch

VirGL Venus

Xen VirtIO Impl

vkcube-wayland

vulkaninfo --summary

QEMU Virt TCG

 

 

 

 

 

 

AVA baremetal

$ vkcube-wayland
Selected GPU 0: AMD Radeon RX 7600 (RADV NAVI33), type: DiscreteGpu

-

virglrenderer-1.0.1

-

works

manos@ava:~$ vulkaninfo --summary
WARNING: [Loader Message] Code 0 : terminator_CreateInstance: Received return code -3 from call to vkCreateInstance in ICD /usr/local/lib/aarch64-linux-gn
u/libvulkan_virtio.so. Skipping this driver.
'DISPLAY' environment variable not set... skipping surface info

VULKANINFO

Vulkan Instance Version: 1.3.275

Instance Extensions: count = 23

VK_EXT_acquire_drm_display : extension revision 1
VK_EXT_acquire_xlib_display : extension revision 1
VK_EXT_debug_report : extension revision 10
VK_EXT_debug_utils : extension revision 2
VK_EXT_direct_mode_display : extension revision 1
VK_EXT_display_surface_counter : extension revision 1
VK_EXT_surface_maintenance1 : extension revision 1
VK_EXT_swapchain_colorspace : extension revision 4
VK_KHR_device_group_creation : extension revision 1
VK_KHR_display : extension revision 23
VK_KHR_external_fence_capabilities : extension revision 1
VK_KHR_external_memory_capabilities : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2 : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2 : extension revision 1
VK_KHR_portability_enumeration : extension revision 1
VK_KHR_surface : extension revision 25
VK_KHR_surface_protected_capabilities : extension revision 1
VK_KHR_wayland_surface : extension revision 6
VK_KHR_xcb_surface : extension revision 6
VK_KHR_xlib_surface : extension revision 6
VK_LUNARG_direct_driver_loading : extension revision 1

Instance Layers: count = 4

VK_LAYER_KHRONOS_validation Khronos Validation Layer 1.3.250 version 1
VK_LAYER_KHRONOS_validation Khronos Validation Layer 1.3.250 version 1
VK_LAYER_MESA_device_select Linux device selection layer 1.3.211 version 1
VK_LAYER_MESA_overlay Mesa Overlay layer 1.3.211 version 1

Devices:

GPU0:
apiVersion = 1.3.274
driverVersion = 24.0.99
vendorID = 0x1002
deviceID = 0x7480
deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
deviceName = AMD Radeon RX 7600 (RADV NAVI33)
driverID = DRIVER_ID_MESA_RADV
driverName = radv
driverInfo = Mesa 24.1.0-devel (git-c3a64f8dd1)
conformanceVersion = 1.3.0.0
deviceUUID = 0c000000-0300-0000-0000-000000000000
driverUUID = 414d442d-4d45-5341-2d44-525600000000
GPU1:
apiVersion = 1.3.274
driverVersion = 0.0.1
vendorID = 0x10005
deviceID = 0x0000
deviceType = PHYSICAL_DEVICE_TYPE_CPU
deviceName = llvmpipe (LLVM 15.0.7, 128 bits)
driverID = DRIVER_ID_MESA_LLVMPIPE
driverName = llvmpipe
driverInfo = Mesa 24.1.0-devel (git-c3a64f8dd1) (LLVM 15.0.7)
conformanceVersion = 1.3.1.1
deviceUUID = 6d657361-3234-2e31-2e30-2d6465766500
driverUUID = 6c6c766d-7069-7065-5555-494400000000

AVA Kvm

root@localhost:~# vkcube-wayland
Selected GPU 0: Virtio-GPU Venus (AMD Radeon RX 7600 (RADV NAVI33)), type: DiscreteGpu

#!/bin/sh
export LIBASOUND_DEBUG=2
export SDL_VIDEODRIVER=wayland
export VIRGL_LOG_FILE=/tmp/virgl.log
export VIRGL_LOG_LEVEL=debug
export MESA_LOG_FILE=/tmp/mesa.log
export WAYLAND_DISPLAY=/run/user/1000/wayland-0
export KERNEL=/home/manos/debian_xen/vmlinuz-6.5.13
export RAMDISK=/home/manos/debian_xen/initrd.img-6.5.13
export QCOW2_DISK=/home/manos/debian_xen/debian-13-nocloud-arm64-daily-20240108-1620.qcow2
../Linaro-blueprints/prefix/bin/qemu-system-aarch64 \
-smp 4,maxcpus=4 \
-machine virt,gic-version=max \
-enable-kvm -cpu host \
-m 6144 \
-object memory-backend-memfd,id=mem0,size=6G \
-vga none \
-display sdl,gl=on,show-cursor=on \
-D /home/manos/debian_xen/qemu_log.txt \
-device virtio-gpu-gl-pci,hostmem=4G,blob=true,context_init=true \
-device usb-ehci -device usb-kbd -device usb-tablet \
-serial stdio \
-kernel "${KERNEL}" \
-initrd "${RAMDISK}" \
-append "root=/dev/vda1" \
-hda "${QCOW2_DISK}"

gitlab.com:epilys/qemu.git testing/virtio-gpu-fixes-xen 69951f44337b80444956b972979529e4c5ecfcaa

virglrenderer-1.0.1

-

works

root@localhost:~# vulkaninfo --summary
'DISPLAY' environment variable not set... skipping surface info

VULKANINFO

Vulkan Instance Version: 1.3.268

Instance Extensions: count = 23

VK_EXT_acquire_drm_display : extension revision 1
VK_EXT_acquire_xlib_display : extension revision 1
VK_EXT_debug_report : extension revision 10
VK_EXT_debug_utils : extension revision 2
VK_EXT_direct_mode_display : extension revision 1
VK_EXT_display_surface_counter : extension revision 1
VK_EXT_surface_maintenance1 : extension revision 1
VK_EXT_swapchain_colorspace : extension revision 4
VK_KHR_device_group_creation : extension revision 1
VK_KHR_display : extension revision 23
VK_KHR_external_fence_capabilities : extension revision 1
VK_KHR_external_memory_capabilities : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2 : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2 : extension revision 1
VK_KHR_portability_enumeration : extension revision 1
VK_KHR_surface : extension revision 25
VK_KHR_surface_protected_capabilities : extension revision 1
VK_KHR_wayland_surface : extension revision 6
VK_KHR_xcb_surface : extension revision 6
VK_KHR_xlib_surface : extension revision 6
VK_LUNARG_direct_driver_loading : extension revision 1

Instance Layers:

Devices:

GPU0:
apiVersion = 1.3.269
driverVersion = 24.0.0
vendorID = 0x1002
deviceID = 0x7480
deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
deviceName = Virtio-GPU Venus (AMD Radeon RX 7600 (RADV NAVI33))
driverID = DRIVER_ID_MESA_VENUS
driverName = venus
driverInfo = Mesa 24.0.0-rc3
conformanceVersion = 1.3.0.0
deviceUUID = efcc9fb2-9d97-1a14-79fa-603a3502b4b6
driverUUID = b8332d64-b5df-f0da-9d77-6ec0aa98fd1f
GPU1:
apiVersion = 1.2.0
driverVersion = 24.0.0
vendorID = 0x10005
deviceID = 0x0000
deviceType = PHYSICAL_DEVICE_TYPE_CPU
deviceName = Virtio-GPU Venus (llvmpipe (LLVM 15.0.7, 128 bits))
driverID = DRIVER_ID_MESA_VENUS
driverName = venus
driverInfo = Mesa 24.0.0-rc3
conformanceVersion = 1.3.0.0
deviceUUID = 5fb5c03f-c537-f0fe-a7e6-9cd5866acb8d
driverUUID = b8332d64-b5df-f0da-9d77-6ec0aa98fd1f
GPU2:
apiVersion = 1.3.274
driverVersion = 0.0.1
vendorID = 0x10005
deviceID = 0x0000
deviceType = PHYSICAL_DEVICE_TYPE_CPU
deviceName = llvmpipe (LLVM 15.0.7, 128 bits)
driverID = DRIVER_ID_MESA_LLVMPIPE
driverName = llvmpipe
driverInfo = Mesa 24.0.0-rc3 (LLVM 15.0.7)
conformanceVersion = 1.3.1.1
deviceUUID = 6d657361-3234-2e30-2e30-2d7263330000
driverUUID = 6c6c766d-7069-7065-5555-494400000000

AVA Xen Dom0

Same as AVA baremetal, as expected

 

virglrenderer-1.0.1

git@gitlab.com:epilys/xen.git new-attempt 3783bb786056e9e5f09882eed789d1440f73d0b3

works

AVA Xen DomU

 

gitlab.com:epilys/qemu.git testing/virtio-gpu-fixes-xen 7a8e568c03fc7a095260f5ba141795c692f851f3

virglrenderer-1.0.1

git@gitlab.com:epilys/xen.git new-attempt 3783bb786056e9e5f09882eed789d1440f73d0b3

 

 

 

Xen PCI/virtio patches