diff options
Diffstat (limited to 'gitlab/issues_text/target_missing/host_missing/accel_WHPX')
11 files changed, 396 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/1820 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/1820 new file mode 100644 index 000000000..9a9205991 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/1820 @@ -0,0 +1,10 @@ +whpx is slower than tcg +Description of problem: +I find whpx much slower than tcg, which is rather odd. +Steps to reproduce: +1. Enable Hyper-V +2. run qemu with **-accel whpx,kernel-irqchip=off** +Additional information: +my cpu: intel i7 6500u +memory: 8go +my gpu: intel graphics 520 hd diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/233 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/233 new file mode 100644 index 000000000..7fcef4aee --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/233 @@ -0,0 +1 @@ +QEMU installer with WHPX support diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2402 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2402 new file mode 100644 index 000000000..98c7068c6 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2402 @@ -0,0 +1,24 @@ +WHPX accelerator run with edk2 EFI fails to process the reboot signal from guest OS +Description of problem: +Qemu freezes any time WHPX-accelerated guest Windows 11 sends a reboot signal to Qemu while running on edk2 EFI. At rare cases, Qemu errors out with `qemu: WHPX: Unexpected VP exit code 4` +Steps to reproduce: +1. Grab Windows 11 23H2 ISO from https://www.microsoft.com/en-Us/software-download/windows11 using either Media Creation Tool or directly and save it under C:\\windows11_23H2.iso +2. Download QEMU 9.0 from https://qemu.weilnetz.de/w64/qemu-w64-setup-20240423.exe and install it into C:\\Program Files\\qemu +3. Make one merged EFI file from two ones bundled in QEMU 9.0 (merged EFI is the only working option for edk2 EFI on windows host): `cd /d C:\Program Files\qemu\share` + +`copy /B edk2-i386-vars.fd + edk2-x86_64-code.fd edk2-x86_64.fd` + +4. Run this command: + +`qemu-system-x86_64.exe -accel whpx -bios share\edk2-x86_64.fd -cpu Westmere,aes=on,avx=on,sse4.1=on,sse4.2=on,ssse3=on,x2apic=on,xsave=on -machine q35 -m 4096 -cdrom C:\windows11_23H2.iso` + +5. Press any key once you see "Press any key to boot from CD..." and wait until Windows Setup suggests to opt for language and currency. +6. Click red "X" close button inside Windows Setup and confirm your choice when Windows Setup asks you to. + +Windows Setup sends a reboot signal to the underlying hardware and Qemu freezes. +Additional information: +If `-bios share\edk2-x86_64.fd` switch is omitted, this command works ok: + +`qemu-system-x86_64 -accel whpx -cpu Westmere,aes=on,avx=on,sse4.1=on,sse4.2=on,ssse3=on,x2apic=on,xsave=on -machine q35 -m 4096 -cdrom D:\originalWindows11_23H2.iso` + +This bug seems to be closely related to this one: https://gitlab.com/qemu-project/qemu/-/issues/2042 - Not able to reboot Linux guest on Windows host diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2461 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2461 new file mode 100644 index 000000000..1650b2609 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2461 @@ -0,0 +1,56 @@ +Qemu with -accel whpx doesn't set WRMSR permissions, which blocks nested virtualization +Description of problem: +This bug blocks https://gitlab.com/qemu-project/qemu/-/issues/628 + +Qemu doesn't set the host's Hyper-V permissions for WRMSR command to allow using SVM or VMX. Unset permissions lead to `unchecked MSR access error: WRMSR to 0xc0000080` inside Linux VM when trying to launch nested VM on real AMD cpu. Intel users do not see guest VMX feature at all. Please see **Additional info** section to understand how Hyper-V permissions for nested virtualization work in Windows. +Steps to reproduce: +1. Turn on VT-x (for Intel) or AMD-V virtualization in your real hardware BIOS/EFI. This was tested only on AMD cpu and Qemu 9, Intel \*may\* behave differently. + 2. Install any distro in qemu disk c:\\linux_disk.qcow2 with MSR enabled in kernel, for example, Ubuntu 22.04 LTS. + 3. Run qemu using `qemu-system-x86_64.exe -m 2048 -machine q35 -accel whpx -cpu Opteron_G5,check,+svm -hda c:\linux_disk.qcow2` + + To check if your distro has MSR mod enabled, run `grep -i msr /boot/config-$(uname -r)` and it should return `CONFIG_X86_MSR=m` or `CONFIG_X86_MSR=y`. If not, recompile and reinstall your kernel. + 4. Run `sudo modprobe msr` and then `sudo rdmsr 0xc0000080 #EFER`. You should see `d01` on modern AMD models. \[Untested\] For intel, run `sudo modprobe msr`, then `sudo rdmsr 0x3A`. You should see `5` or `0x5` or `0x100005`. d01 for AMD and 5 for Intel in output are necessary to enable nested VM. If RDMSR returns non-zero value, it means that qemu developers implemented this part of functionality and your Hyper-V on Windows is not broken. + 5. Run `cat /proc/cpuinfo | grep -c svm` on AMD cpu, which should output a positive digit. + 6. Run `sudo dmesg | grep kvm` and note: + + `[1.924036] kvm_amd: Nested Virtualization enabled` + + `[1.924038] kvm_amd: Nested Paging disabled`\ + `[1.924040] kvm_amd: PMU virtualization is disabled` + 7. This, in theory, is sufficient for KVM-acclelerated qemu to start a nested VM. + 8. Run `xhost si:localuser:root` to prevent `gtk initialization failed` error + 9. Run `sudo qemu-system-x86_64 -accel kvm`. A black window with "Guest has not initialized the display (yet)." appears. +10. Run `sudo dmesg` and note qemu crash starting with `unchecked MSR access error: WRMSR` + + \* Steps 1-4 are only required for diagnostics, and KVM works (in native Windows Hyper-V manager) without the necessarity to enter these commands in usual usage scenarios. If you run <span dir="">`cat /proc/cpuinfo | grep -c vmx` on Intel cpu</span> on Step 5, you may get zero. See Step 5 of Additional Info to understand why. + + \ + Microsoft released useful info about how to look into Hyper-V MSR access problems:\ + WRMSR research in Hyper-V - https://msrc.microsoft.com/blog/2018/12/first-steps-in-hyper-v-research/ +Additional information: +By default, Hyper-V manager in Windows does not allow nested virtualization.\ +To see what happens, do the following: + + 1. Open Hyper-V manager built in the host Windows and create default Ubuntu 22.04 LTS suggested. Upon installation, shut down the VM. Note the name of the VM ("Ubuntu 22.04 LTS" by default). + 2. Open Powershell console in the host and run `Set-VMProcessor -VMName "Ubuntu 22.04 LTS" -ExposeVirtualizationExtensions $false` + 3. Launch guest Ubuntu 22.04 LTS, open its terminal and run `sudo dmesg | grep kvm`. No output. + 4. Run `sudo rdmsr 0xc0000080 #EFER` that outputs d01, which means that Hyper-V manager allows this **ring 0 level** operation. + 5. Run `cat /proc/cpuinfo | grep -c svm` for AMD or `cat /proc/cpuinfo | grep -c vmx` for Intel. Note that output is `0`. + 6. Shut the VM down. + 7. Now, Open Powershell console and `run Set-VMProcessor -VMName "Ubuntu 22.04 LTS" -ExposeVirtualizationExtensions $true` + 8. Launch Ubuntu 22.04 LTS, open its terminal and run `sudo dmesg | grep kvm`. Output: + + `[2.369144] kvm: Nested Virtualization enabled` + + `[2.369146] SVM: kvm: Nested Paging enabled` + + `[2.369148] SVM: kvm: Hyper-V enlightened NPT TLB flush enabled` + + `[2.369149] SVM: kvm: Hyper-V Direct TLB flush enabled` + + `[2.369153] SVM: Virtual VMLOAD VMSAVE supported` + 9. Run `cat /proc/cpuinfo | grep -c svm` for AMD or `cat /proc/cpuinfo | grep -c vmx` for Intel. Note that output is `1` or other positive digit, depending on the number of cpus you've assigned to the VM. +10. Run `xhost si:localuser:root` to prevent `gtk initialization failed` error +11. Run `sudo qemu-system-x86_64 -accel kvm` and it successfully boots into qemu BIOS. +12. Running `sudo qemu-system-x86_64 -accel kvm` calls WRMSR in background, so if you see\ + booted qemu BIOS in KVM, wrmsr was successfully called. diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2748 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2748 new file mode 100644 index 000000000..d15f28752 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2748 @@ -0,0 +1,250 @@ +Windows specific main loop deadlock when using serial pipe communication +Description of problem: +Attaching WinDBG (or for that matter, any other serial end that sends data quickly enough) causes QEMU to deadlock. +Steps to reproduce: +1. Fire up QEMU with Windows (serial debugging enable) +2. Restart +3. At boot time, plug-in host WinDBG +Additional information: +WinDBG QEMU stacktrace +``` +0:020> g +(34c4.2330): Control-C exception - code 40010005 (first chance) +First chance exceptions are reported before any exception handling. +This exception may be expected and handled. +KERNELBASE!CtrlRoutine+0x1be: +00007ffe`82ace6ce 0f1f440000 nop dword ptr [rax+rax] +0:019> g +(34c4.3b3c): Break instruction exception - code 80000003 (first chance) +ntdll!DbgBreakPoint: +00007ffe`850d4090 cc int 3 +0:017> ~*k + + 0 Id: 34c4.28b8 Suspend: 1 Teb: 0000009f`a24ac000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a27f7388 00007ffe`829e6656 ntdll!NtCreateEvent+0x14 +0000009f`a27f7390 00007ff7`38abcbd6 KERNELBASE!PeekNamedPipe+0xa6 +0000009f`a27f7460 00007ff7`38bb8f11 qemu_system_x86_64!win_chr_pipe_poll+0x84 +0000009f`a27f74d0 00007ff7`38bb93fb qemu_system_x86_64!os_host_main_loop_wait+0x133 +0000009f`a27ffba0 00007ff7`38686c45 qemu_system_x86_64!main_loop_wait+0xce +0000009f`a27ffc00 00007ff7`38ac2f14 qemu_system_x86_64!qemu_main_loop+0x2b +0000009f`a27ffc40 00007ff7`38ac2f52 qemu_system_x86_64!qemu_default_main+0x14 +0000009f`a27ffc80 00007ff7`38bdeede qemu_system_x86_64!SDL_main+0x26 +0000009f`a27ffcb0 00007ff7`3838140a qemu_system_x86_64!__mingw_enum_import_library_names+0x24e +0000009f`a27ffd30 00007ff7`383814f6 qemu_system_x86_64!__tmainCRTStartup+0xea +0000009f`a27ffd70 00007ffe`83ca259d qemu_system_x86_64!mainCRTStartup+0x16 +0000009f`a27ffda0 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a27ffdd0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 1 Id: 34c4.2738 Suspend: 1 Teb: 0000009f`a24ae000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a29ffaa8 00007ffe`8506586e ntdll!NtWaitForWorkViaWorkerFactory+0x14 +0000009f`a29ffab0 00007ffe`83ca259d ntdll!TppWorkerThread+0x2ee +0000009f`a29ffd90 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a29ffdc0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 2 Id: 34c4.35e4 Suspend: 1 Teb: 0000009f`a24b0000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a2bffa88 00007ffe`8506586e ntdll!NtWaitForWorkViaWorkerFactory+0x14 +0000009f`a2bffa90 00007ffe`83ca259d ntdll!TppWorkerThread+0x2ee +0000009f`a2bffd70 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a2bffda0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 3 Id: 34c4.24f0 Suspend: 1 Teb: 0000009f`a24b2000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a2dff838 00007ffe`8506586e ntdll!NtWaitForWorkViaWorkerFactory+0x14 +0000009f`a2dff840 00007ffe`83ca259d ntdll!TppWorkerThread+0x2ee +0000009f`a2dffb20 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a2dffb50 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 4 Id: 34c4.2898 Suspend: 1 Teb: 0000009f`a24b4000 Unfrozen "pool" +Child-SP RetAddr Call Site +0000009f`a2fffb58 00007ffe`850997db ntdll!NtWaitForAlertByThreadId+0x14 +0000009f`a2fffb60 00007ffe`829df2e9 ntdll!RtlSleepConditionVariableSRW+0x13b +0000009f`a2fffbe0 00007ffd`cb1c6903 KERNELBASE!SleepConditionVariableSRW+0x29 +0000009f`a2fffc20 00007ffd`cb235399 libglib_2_0_0!g_byte_array_sort_with_data+0x143 +0000009f`a2fffc80 00007ffd`cb234a41 libglib_2_0_0!g_get_num_processors+0x2c9 +0000009f`a2fffce0 00007ffd`cb2696f7 libglib_2_0_0!g_test_get_path+0x51 +0000009f`a2fffd20 00007ffe`8424e634 libglib_2_0_0!g_private_replace+0x117 +0000009f`a2fffd50 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a2fffd80 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a2fffdb0 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a2fffde0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 5 Id: 34c4.2ed8 Suspend: 1 Teb: 0000009f`a24b6000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a31ff9b8 00007ffe`829a9cee ntdll!NtWaitForSingleObject+0x14 +0000009f`a31ff9c0 00007ff7`38b9f99f KERNELBASE!WaitForSingleObjectEx+0x8e +0000009f`a31ffa60 00007ff7`38baba83 qemu_system_x86_64!qemu_event_wait+0xe3 +0000009f`a31ffac0 00007ff7`38b9faf2 qemu_system_x86_64!call_rcu_thread+0x6c +0000009f`a31ffb00 00007ffe`8424e634 qemu_system_x86_64!win32_start_routine+0x4e +0000009f`a31ffb50 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a31ffb80 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a31ffbb0 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a31ffbe0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 6 Id: 34c4.2980 Suspend: 1 Teb: 0000009f`a24b8000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a35ff888 00007ffe`82dc54a7 win32u!NtUserMsgWaitForMultipleObjectsEx+0x14 +0000009f`a35ff890 00007ffe`71373c70 USER32!MsgWaitForMultipleObjects+0x57 +0000009f`a35ff8d0 00007ffe`71373bc9 gdiplus!BackgroundThreadProc+0x70 +0000009f`a35ff940 00007ffe`83ca259d gdiplus!DllRefCountSafeThreadThunk+0x29 +0000009f`a35ff970 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a35ff9a0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 7 Id: 34c4.3880 Suspend: 1 Teb: 0000009f`a24ba000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a37ff808 00007ffe`829c6849 ntdll!NtWaitForMultipleObjects+0x14 +0000009f`a37ff810 00007ffe`837707ad KERNELBASE!WaitForMultipleObjectsEx+0xe9 +0000009f`a37ffaf0 00007ffe`8377061a combase!WaitCoalesced+0xa9 +0000009f`a37ffd90 00007ffe`8377040f combase!CROIDTable::WorkerThreadLoop+0x5a +0000009f`a37ffde0 00007ffe`83770829 combase!CRpcThread::WorkerLoop+0x57 +0000009f`a37ffe60 00007ffe`83ca259d combase!CRpcThreadCache::RpcWorkerThreadEntry+0x29 +0000009f`a37ffe90 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a37ffec0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 8 Id: 34c4.1bd0 Suspend: 1 Teb: 0000009f`a24bc000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a39ffaa8 00007ffe`8506586e ntdll!NtWaitForWorkViaWorkerFactory+0x14 +0000009f`a39ffab0 00007ffe`83ca259d ntdll!TppWorkerThread+0x2ee +0000009f`a39ffd90 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a39ffdc0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 9 Id: 34c4.20fc Suspend: 1 Teb: 0000009f`a24be000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a3bffa78 00007ffe`8506586e ntdll!NtWaitForWorkViaWorkerFactory+0x14 +0000009f`a3bffa80 00007ffe`83ca259d ntdll!TppWorkerThread+0x2ee +0000009f`a3bffd60 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a3bffd90 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 10 Id: 34c4.1768 Suspend: 1 Teb: 0000009f`a24c0000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a3dff438 00007ffe`8457a212 win32u!NtUserMsgWaitForMultipleObjectsEx+0x14 +0000009f`a3dff440 00007ffe`8456fa2e shcore!WorkThreadManager::CThread::ThreadProc+0xbf2 +0000009f`a3dff6f0 00007ffe`8456f9f1 shcore!WorkThreadManager::CThread::s_ExecuteThreadProc+0x22 +0000009f`a3dff730 00007ffe`83ca259d shcore!<lambda_9844335fc14345151eefcc3593dd6895>::<lambda_invoker_cdecl>+0x11 +0000009f`a3dff760 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a3dff790 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 11 Id: 34c4.3ac0 Suspend: 1 Teb: 0000009f`a24d6000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a41fead0 00007ffe`8506d249 ntdll!RtlpAllocateHeap+0x835 +0000009f`a41fed30 00007ffe`85134832 ntdll!RtlpAllocateHeapInternal+0x6c9 +0000009f`a41fee30 00007ffe`850ee2e8 ntdll!RtlDebugAllocateHeap+0x102 +0000009f`a41feed0 00007ffe`8506d249 ntdll!RtlpAllocateHeap+0x7f1a8 +0000009f`a41ff130 00007ffe`85059634 ntdll!RtlpAllocateHeapInternal+0x6c9 +0000009f`a41ff230 00007ffe`85058877 ntdll!LdrpAllocateTls+0x108 +0000009f`a41ff300 00007ffe`850a45af ntdll!LdrpInitializeThread+0x6f +0000009f`a41ff3e0 00007ffe`850a44e3 ntdll!_LdrpInitialize+0x93 +0000009f`a41ff460 00007ffe`850a440e ntdll!LdrpInitializeInternal+0x6b +0000009f`a41ff6e0 00000000`00000000 ntdll!LdrInitializeThunk+0xe + + 12 Id: 34c4.3fac Suspend: 1 Teb: 0000009f`a24c4000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a43ff268 00007ffe`85067e65 ntdll!NtWaitForAlertByThreadId+0x14 +0000009f`a43ff270 00007ff7`38b9edcd ntdll!RtlAcquireSRWLockExclusive+0x165 +0000009f`a43ff2e0 00007ff7`386771e6 qemu_system_x86_64!qemu_mutex_lock_impl+0x73 +0000009f`a43ff320 00007ff7`388b5654 qemu_system_x86_64!bql_lock_impl+0x78 +0000009f`a43ff370 00007ff7`388b5b00 qemu_system_x86_64!prepare_mmio_access+0x30 +0000009f`a43ff3b0 00007ff7`388b5c6c qemu_system_x86_64!flatview_read_continue_step+0xa0 +0000009f`a43ff430 00007ff7`388b5db9 qemu_system_x86_64!flatview_read_continue+0x66 +0000009f`a43ff480 00007ff7`388b5e60 qemu_system_x86_64!flatview_read+0xe2 +0000009f`a43ff500 00007ff7`388b5fb6 qemu_system_x86_64!address_space_read_full+0x78 +0000009f`a43ff570 00007ff7`38786ddf qemu_system_x86_64!address_space_rw+0x68 +0000009f`a43ff5c0 00007ffd`c624af05 qemu_system_x86_64!whpx_emu_ioport_callback+0x63 +0000009f`a43ff610 00007ffd`c62523d5 WinHvEmulation!IoPortHandler::NotifyIoPortRead+0x45 +0000009f`a43ff640 00007ffd`c624b916 WinHvEmulation!EmulatorVp::DispatchIoPortOperation+0x159 +0000009f`a43ff690 00007ffd`c624a77f WinHvEmulation!EmulatorVp::TrySimpleIoEmulation+0xc2 +0000009f`a43ff800 00007ffd`c6248caf WinHvEmulation!EmulatorWrapper::TryEmulationHelper<<lambda_6e350ef384ad69a259a7e747c2fadeeb> &>+0xcb +0000009f`a43ff8a0 00007ff7`38787201 WinHvEmulation!WHvEmulatorTryIoEmulation+0x10f +0000009f`a43ff930 00007ff7`38788cd6 qemu_system_x86_64!whpx_handle_portio+0x73 +0000009f`a43ff9a0 00007ff7`38789bd2 qemu_system_x86_64!whpx_vcpu_run+0x4a8 +0000009f`a43ffb20 00007ff7`3878c008 qemu_system_x86_64!whpx_vcpu_exec+0x54 +0000009f`a43ffb60 00007ff7`38b9faf2 qemu_system_x86_64!whpx_cpu_thread_fn+0xfb +0000009f`a43ffbb0 00007ffe`8424e634 qemu_system_x86_64!win32_start_routine+0x4e +0000009f`a43ffc00 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a43ffc30 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a43ffc60 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a43ffc90 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 13 Id: 34c4.3ecc Suspend: 1 Teb: 0000009f`a24c6000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a45ff8c8 00007ffe`829a9cee ntdll!NtWaitForSingleObject+0x14 +0000009f`a45ff8d0 00007ffd`e15631e2 KERNELBASE!WaitForSingleObjectEx+0x8e +0000009f`a45ff970 00007ffd`e156b621 WinHvPlatform!WHvApi::Processor::RunVp+0x486 +0000009f`a45ffbe0 00007ff7`38788b9a WinHvPlatform!WHvRunVirtualProcessor+0x31 +0000009f`a45ffc20 00007ff7`38789bd2 qemu_system_x86_64!whpx_vcpu_run+0x36c +0000009f`a45ffda0 00007ff7`3878c008 qemu_system_x86_64!whpx_vcpu_exec+0x54 +0000009f`a45ffde0 00007ff7`38b9faf2 qemu_system_x86_64!whpx_cpu_thread_fn+0xfb +0000009f`a45ffe30 00007ffe`8424e634 qemu_system_x86_64!win32_start_routine+0x4e +0000009f`a45ffe80 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a45ffeb0 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a45ffee0 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a45fff10 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 14 Id: 34c4.3d08 Suspend: 1 Teb: 0000009f`a24c8000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a47ff1a8 00007ffe`829a9cee ntdll!NtWaitForSingleObject+0x14 +0000009f`a47ff1b0 00007ffd`e15631e2 KERNELBASE!WaitForSingleObjectEx+0x8e +0000009f`a47ff250 00007ffd`e156b621 WinHvPlatform!WHvApi::Processor::RunVp+0x486 +0000009f`a47ff4c0 00007ff7`38788b9a WinHvPlatform!WHvRunVirtualProcessor+0x31 +0000009f`a47ff500 00007ff7`38789bd2 qemu_system_x86_64!whpx_vcpu_run+0x36c +0000009f`a47ff680 00007ff7`3878c008 qemu_system_x86_64!whpx_vcpu_exec+0x54 +0000009f`a47ff6c0 00007ff7`38b9faf2 qemu_system_x86_64!whpx_cpu_thread_fn+0xfb +0000009f`a47ff710 00007ffe`8424e634 qemu_system_x86_64!win32_start_routine+0x4e +0000009f`a47ff760 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a47ff790 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a47ff7c0 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a47ff7f0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 15 Id: 34c4.3eb4 Suspend: 1 Teb: 0000009f`a24ca000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a49ff278 00007ffe`829a9cee ntdll!NtWaitForSingleObject+0x14 +0000009f`a49ff280 00007ffd`e15631e2 KERNELBASE!WaitForSingleObjectEx+0x8e +0000009f`a49ff320 00007ffd`e156b621 WinHvPlatform!WHvApi::Processor::RunVp+0x486 +0000009f`a49ff590 00007ff7`38788b9a WinHvPlatform!WHvRunVirtualProcessor+0x31 +0000009f`a49ff5d0 00007ff7`38789bd2 qemu_system_x86_64!whpx_vcpu_run+0x36c +0000009f`a49ff750 00007ff7`3878c008 qemu_system_x86_64!whpx_vcpu_exec+0x54 +0000009f`a49ff790 00007ff7`38b9faf2 qemu_system_x86_64!whpx_cpu_thread_fn+0xfb +0000009f`a49ff7e0 00007ffe`8424e634 qemu_system_x86_64!win32_start_routine+0x4e +0000009f`a49ff830 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a49ff860 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a49ff890 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a49ff8c0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 16 Id: 34c4.3844 Suspend: 1 Teb: 0000009f`a24cc000 Unfrozen +Child-SP RetAddr Call Site +0000009f`a4bff328 00007ffe`829c6849 ntdll!NtWaitForMultipleObjects+0x14 +0000009f`a4bff330 00007ffd`cb215d94 KERNELBASE!WaitForMultipleObjectsEx+0xe9 +0000009f`a4bff610 00007ffd`cb21607a libglib_2_0_0!g_pattern_match_simple+0x214 +0000009f`a4bff690 00007ffd`cb216612 libglib_2_0_0!g_pattern_match_simple+0x4fa +0000009f`a4bff6e0 00007ffd`cb203740 libglib_2_0_0!g_poll+0x392 +0000009f`a4bffbd0 00007ffd`cb204180 libglib_2_0_0!g_get_monotonic_time+0xac0 +0000009f`a4bffc60 00007ffd`c9eaa829 libglib_2_0_0!g_main_loop_run+0x120 +0000009f`a4bffcb0 00007ffd`e5ab4e2b libspice_server_1!spice_server_init+0x1ca9 +0000009f`a4bffcf0 00007ffe`8424e634 libwinpthread_1!pthread_create_wrapper+0x9b +0000009f`a4bffd30 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`a4bffd60 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`a4bffd90 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`a4bffdc0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + +# 17 Id: 34c4.3b3c Suspend: 1 Teb: 0000009f`a24d8000 Unfrozen +Child-SP RetAddr Call Site +0000009f`c4dffd08 00007ffe`8510735e ntdll!DbgBreakPoint +0000009f`c4dffd10 00007ffe`83ca259d ntdll!DbgUiRemoteBreakin+0x4e +0000009f`c4dffd40 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`c4dffd70 00000000`00000000 ntdll!RtlUserThreadStart+0x28 + + 18 Id: 34c4.16c4 Suspend: 1 Teb: 0000009f`a24d0000 Unfrozen +Child-SP RetAddr Call Site +0000009f`c53ffb58 00007ffe`850997db ntdll!NtWaitForAlertByThreadId+0x14 +0000009f`c53ffb60 00007ffe`829df2e9 ntdll!RtlSleepConditionVariableSRW+0x13b +0000009f`c53ffbe0 00007ff7`38b9f403 KERNELBASE!SleepConditionVariableSRW+0x29 +0000009f`c53ffc20 00007ff7`38bbc9e5 qemu_system_x86_64!qemu_cond_timedwait_impl+0x92 +0000009f`c53ffc70 00007ff7`38b9faf2 qemu_system_x86_64!worker_thread+0xc9 +0000009f`c53ffce0 00007ffe`8424e634 qemu_system_x86_64!win32_start_routine+0x4e +0000009f`c53ffd30 00007ffe`8424e70c msvcrt!_callthreadstartex+0x28 +0000009f`c53ffd60 00007ffe`83ca259d msvcrt!_threadstartex+0x7c +0000009f`c53ffd90 00007ffe`8508af38 KERNEL32!BaseThreadInitThunk+0x1d +0000009f`c53ffdc0 00000000`00000000 ntdll!RtlUserThreadStart+0x28 +``` diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2877 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2877 new file mode 100644 index 000000000..79a3593b1 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/2877 @@ -0,0 +1 @@ +Windows Hypervisor Acceleration does not work in Qemu 9.5.20 on Windows 11 24H2 Host diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/289 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/289 new file mode 100644 index 000000000..0f08a5ce0 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/289 @@ -0,0 +1 @@ +Guest freezes until there is a keyboard input on Windows version diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/430 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/430 new file mode 100644 index 000000000..ebe9aaaf9 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/430 @@ -0,0 +1 @@ +Microsoft Hyper-V acceleration not working diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/628 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/628 new file mode 100644 index 000000000..7476dd8ae --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/628 @@ -0,0 +1,8 @@ +nested virtualization on whpx +Additional information: +Depends on, first needs fixing of, Issue #346 / Issue #430 , Essentially accel=whpx is not working/is broken/has regression. +``` +PS J:\> E:\scoopg\shims\qemu-system-x86_64.exe --version +QEMU emulator version 6.1.0 (v6.1.0-11882-g7deea770bf-dirty) +Copyright (c) 2003-2021 Fabrice Bellard and the QEMU Project developers +``` diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/689 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/689 new file mode 100644 index 000000000..7c43c0b52 --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/689 @@ -0,0 +1,33 @@ +Unable To Open UDP Port +Description of problem: +Unable to forward UDP port +Steps to reproduce: +Used **..\qemu-system-x86_64.exe" -smp 4 -accel whpx -hda ".\ubuntu01.qcow2" -m 8G -vga std -net nic -net user,hostfwd=tcp::80-:80,hostfwd=tcp::443-:443,hostfwd=tcp::10000-:10000,hostfwd=udp::10000-:10000**__ to run qemu. +Additional information: +I want to use 10000(UDP) port at my server i used upper command to run my Qemu server as i was using it for TCP ports. Here are the logs: +<br/> +**AT Guest(UBUNTU):**<br/> +10000/tcp ALLOW Anywhere<br/> +10000/udp ALLOW Anywhere<br/><br/> + +**AT Host(Windows):**<br/> +_**FOR TCP 10000 (IT'S WORKING)**_<br/> + Starting portqry.exe -n 127.0.0.1 -e 10000 -p TCP ...<br/> +Querying target system called:<br/> + 127.0.0.1<br/> +Attempting to resolve IP address to a name...<br/> +IP address resolved to DESKTOP-Node001<br/> +querying...<br/> +TCP port 10000 (unknown service): LISTENING<br/> +portqry.exe -n 127.0.0.1 -e 10000 -p TCP exits with return code 0x00000000.<br/><br/> + + +_**FOR UDP 10000 (IT'S NOT WORKING)**_<br/> +Starting portqry.exe -n 127.0.0.1 -e 10000 -p UDP ...<br/> +Querying target system called:<br/> + 127.0.0.1<br/> +Attempting to resolve IP address to a name...<br/> +IP address resolved to DESKTOP-Node001<br/> +querying...<br/> +UDP port 10000 (unknown service): LISTENING or FILTERED<br/> +portqry.exe -n 127.0.0.1 -e 10000 -p UDP exits with return code 0x00000002.<br/> diff --git a/gitlab/issues_text/target_missing/host_missing/accel_WHPX/858 b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/858 new file mode 100644 index 000000000..e2621ef0f --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_WHPX/858 @@ -0,0 +1,11 @@ +qemu-system-x86_64: WHPX: Unexpected VP exit code 4 +Description of problem: +Qemu closes and prints following message: + +WHPX: setting APIC emulation mode in the hypervisor +Windows Hypervisor Platform accelerator is operational +whpx: injection failed, MSI (0, 0) delivery: 0, dest_mode: 0, trigger mode: 0, vector: 0, lost (c0350005) +qemu-system-x86_64: WHPX: Unexpected VP exit code 4 +Steps to reproduce: +1. build OVMF firmware from edk2 +2. run cmd : qemu-system-x86_64 -accel whpx --bios D:\Projects\FW\uefi\edk2\Build\OvmfX64\DEBUG_VS2019\FV\OVMF.fd |