Kernel Debugging (KDNET)
Kernel Debugging is available for Windows guests via KDNET over VMBus.
Enabling and Starting the Debugger
Set up KDNET on the guest and start the debugger as described on
Set up KDNET network kernel debugging manually | Microsoft Learn.
Setting busparams
is not necessary.
With OpenVMM and WHP as Host
Set up the VM for UEFI and VMBus depending on your use case and pass the
additional flag --net consomme
:
- Without OpenHCL: Pass the
--uefi
flags when starting OpenVMM. - With OpenHCL: Ensure "UEFI Boot" and "VTL2 VMBus Support" are active
Known Issues with KDNET on WHP
- KDNET currently only works with the
consomme
networking option in OpenVMM, howeverconsomme
will create a new network adapter in the guest every time OpenVMM is restarted. This can be safely ignored.- KDNET will also connect with
--net vmnic:<ethernet switch id>
, but hangs immediately after due to a yet undiagnosed bug in vmbusproxy.
- KDNET will also connect with
- Quitting OpenVMM without shutting down the VM first will prevent the same debugger instance from reconnecting to the guest on next boot. Relauch the debugger to reconnect.
- When launching an OpenHCL VM with KDNET,
virt_whp::synic
will report a constant stream offailed to signal synic
errors for several seconds. These don't appear to affect the VM's functionality and can be ignored.