CVSROOT: /cvs Module name: src Changes by: d...@cvs.openbsd.org 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@