kvm-guest-drivers-windows icon indicating copy to clipboard operation
kvm-guest-drivers-windows copied to clipboard

[Windows 11][aarch64] how to configure virtio-gpu to run with Windows 11 for aarch64 VM?

Open bryantclcqq opened this issue 3 years ago • 14 comments
trafficstars

  1. configure qemu with -device virtio-vga
  2. install viogpu dod driver in win 11 vm When I update the viogpu driver, it will get a bsod (Blue Screen Of Dead). As I know virtio-gpu works ok for windows 10 on X86 machine. Does anyone know what's happening? Can virtio-gpu run with qemu kvm windows 11 on aarch64 machines?

qemu: v7.0.0 Linux: 4.19 Windows 11 guest: Windows 11 for arm 21H2

bryantclcqq avatar Aug 03 '22 04:08 bryantclcqq

@bryantclcqq Honestly, I've never tried to run virtio-gpu on ARM64, But I'm very interested in your experience and will happy to investigate and try to fix this issue. Cany you please share the qemu command line, and if possible the crash dump file?

All the best, Vadim.

vrozenfe avatar Aug 03 '22 05:08 vrozenfe

I also encountered this problem. The dump file showed the postion crashing was due to KeAcquireSpinLockRaiseToDpc in VioGpuBuf::GetBuf(). The code of BSOD is IRQL NOT Less or Equal.

zyimin avatar Aug 03 '22 06:08 zyimin

Is there any guide to build virtio gpu driver with win11 arm version?

zyimin avatar Aug 03 '22 06:08 zyimin

@zyimin Can you share the crash dump file and the qemu command line?

There are some instructions how to set up the build environment and how to build the virtio-win drivers at Wiki page https://github.com/virtio-win/kvm-guest-drivers-windows/wiki

Vadim.

vrozenfe avatar Aug 03 '22 07:08 vrozenfe

I used the 7.0.0 qemu compiled by myself. Qemu cmd line is qemu-system-aarch64 -nodefaults -m 6G -machine virt,kernel-irqchip=on,virtualization=off,its=off,gic-version=3 -accel kvm -cpu host -smp 4 -bios ./QEMU_EFI.fd -device nec-usb-xhci -device usb-kbd -device usb-tablet -device usb-storage,drive=win11 -drive if=none,id=win11,format=qcow2,file=./win11_disk.qcow2,overlap-check=none,cache=unsafe -device ramfb -vnc :1 -device virtio-net-pci,netdev=user0 -netdev user,id=user0 -device virtio-gpu-pci

The BSOD must be reproduced if viogpu driver starts up. Because of the network limitation, I can't send the dump file to you. Sorry about that.

zyimin avatar Aug 03 '22 08:08 zyimin

I want to run with windows 11 for aarch64 with virtio-gpu. How do I install viogpu dod driver?

gaojinhao avatar Aug 15 '22 08:08 gaojinhao

hi @vrozenfe, as shown in this issue, virtio-gpu (ARM64) from spice guest tools could setup and run successfully within Windows 11 for ARM vm. However virtio-gpu from virtio-win release iso cound not run, which would suffer bsod (Blue Screen Of Deadth) problem. https://github.com/utmapp/UTM/issues/3293

Do you know what is difference between them? Could virtio-win fix this bsod problem?

bryantclcqq avatar Aug 27 '22 09:08 bryantclcqq

@bryantclcqq Honestly, I'm really surprised that spice comes with virtio-gpu drivers, and especially with ARM64 version signed with Microsoft Windows Third Party Component signature. I need to confirm with our spice guys the origin of this driver, but it seems to be based on build 208..210 The latest virtio-win build available for download is 221. This build includes several virtio-gpu reelated fixes and optimisations, but AFAIK was never tested on ARM64 platforms. I would really like to make sure that ARM64 version of virtio-gpu driver working properly, but unfortunately I don't have any ARM64 system except for RPI 4 at the moment. If you can share the crash dump file via google drive, dropbox or any other service, please ping me at vrozenfe_at_redhat_dot_com.

Best, Vadim.

vrozenfe avatar Aug 28 '22 13:08 vrozenfe

FTR, I'm using -device virtio-gpu-pci on Win 11 for arm64 in QEMU with the current latest virtio-win.iso driver, the only issue is that I'm unable to change the resolution (using the VNC backend). My setup is this: https://gist.github.com/Vogtinator/293c4f90c5e92838f7e72610725905fd

Vogtinator avatar Nov 14 '22 07:11 Vogtinator

Use qemu-system-aarch64 version 8.0 Use 'virtio-gpu' graphics card to install the ARM64 'viogpudo' driver in 'virtio-win 0.1.229' in windows11 for arm. The installation is successful, but the resolution cannot be set. May I ask which great God can give some advice?

giantstars avatar Aug 25 '23 07:08 giantstars

Use qemu-system-aarch64 version 8.0 Use 'virtio-gpu' graphics card to install the ARM64 'viogpudo' driver in 'virtio-win 0.1.229' in windows11 for arm. The installation is successful, but the resolution cannot be set. May I ask which great God can give some advice?

As a workaround you can edit the registry: https://gist.github.com/Vogtinator/293c4f90c5e92838f7e72610725905fd#file-openqa-setup-md

Vogtinator avatar Aug 25 '23 07:08 Vogtinator

Use qemu-system-aarch64 version 8.0 Use 'virtio-gpu' graphics card to install the ARM64 'viogpudo' driver in 'virtio-win 0.1.229' in windows11 for arm. The installation is successful, but the resolution cannot be set. May I ask which great God can give some advice?

As a workaround you can edit the registry: https://gist.github.com/Vogtinator/293c4f90c5e92838f7e72610725905fd#file-openqa-setup-md

Thank you very much, the resolution has been changed successfully. Is there a way to select the resolution in windows11 for arm

giantstars avatar Aug 25 '23 08:08 giantstars

If there's a way I haven't found it it

Vogtinator avatar Aug 25 '23 08:08 Vogtinator

If there's a way I haven't found it it

This result is already very good for me, just a little greedy, thank you very much

giantstars avatar Aug 25 '23 08:08 giantstars