CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2023/10/25 06:44:28
Modified files:
usr.sbin/vmd : i8253.c mc146818.c ns8250.c
Log message:
vmd(8): stop toggling irq deassert for edge triggered devs.
For edge-triggered devices, there's no need to deassert an irq given
how vmd(8) emulates a pic. Deassertion grabs a lock and can trigger
the ioctl for toggling pending interrupts causing a race condition.
This results in a storm of vm-exits and guest vcpu becoming
unresponsive.
The original sign of this issue is guest "pauses" when pasting text
into a serial console connection in something like xterm(1).
Tested by mbuhl@, cheloha@, sashan@, kn@, and mlarkin@.
"go for it", mlarkin@