-
Bug
-
Resolution: Done-Errata
-
Minor
-
CentOS Stream 9
-
virtio-win-1.9.48-0.el10
-
No
-
Important
-
1
-
rhel-virt-windows
-
ssg_virtualization
-
3
-
QE ack
-
False
-
False
-
-
None
-
RHEL-10.2 Pending
-
Pass
-
virtio-win-prewhql-0.1-276
-
New Test Coverage
-
Unspecified
-
Unspecified
-
Unspecified
-
-
x86_64
-
None
https://github.com/virtio-win/kvm-guest-drivers-windows/issues/1312
Installation of build 266 (and later) hangs on 2025 (with PollMode enabled)
The problem is reproducible 100% on upstream user (Alibaba Cloud), they can't reproduce it on qemu.
Looking at guest dump from frozen machine I do not see any special reason why this can't happen on qemu, there is a difference with typical behavior on qemu setup, but the root cause of the difference is not clear and the flow in the driver is definitely problematic.
2 CPUs, 2 queues
On customer setup:
Windows configures RSS to work only on CPU0, so both poll handlers have the same affinity of CPU0. But the interrupts naturally may come on any of 2 CPUs , if the interrupt comes on Q1 this triggers poll handler 1 on CPU0, but the packet is related to Q0, so we trigger poll handler 0 and the system calls it synchronously because this poll handler's affinity is also CPU0.
On typical setup:
Windows configures RSS to work both CPUs, 2 poll handlers has different affinities and no problem happens.
Reproduction procedure worked for me:
- Configure virtio device with 2 queues, 2 cpus
- Install driver 266... 274 for Win11/2025
- Open Powershell admin prompt
- Run get-netadapter to see name(s) of virtio-net adapter
- Run get-NetAdapterRss -Name "adapter name"
- If printed MaxProcessors = 1, goto 8
- Run set-NetAadapterRss -Name "adapter name" -MaxProcessors 1
- If the OS is not frozen yet, try to turn the link off-on (via set_link hmp, for example) or ping the virtio-net from several different LAN addresses.
- links to
-
RHBA-2025:153011
virtio-win bug fix and enhancement update