HomeFreeBSD

vmm: fix HLT loop while vcpu has requested virtual interrupts

Description

vmm: fix HLT loop while vcpu has requested virtual interrupts

This fixes the detection of pending interrupts when pirval is 0 and the
pending bit is set

More information how this situation occurs, can be found here:
https://github.com/freebsd/freebsd-src/blob/c5b5f2d8086f540fefe4826da013dd31d4e45fe8/sys/amd64/vmm/intel/vmx.c#L4016-L4031

Reviewed by: corvink, markj
Fixes: 02cc877968bbcd57695035c67114a67427f54549 ("Recognize a pending virtual interrupt while emulating the halt instruction.")
MFC after: 1 week
Sponsored by: vStack
Differential Revision: https://reviews.freebsd.org/D39620

(cherry picked from commit 0912408a281f203c43d0b3f73c38117336588342)

Details

Provenance
gusev.vitaliy_gmail.comAuthored on Apr 26 2023, 8:17 AM
corvinkCommitted on May 8 2023, 8:21 AM
Reviewer
corvink
Differential Revision
D39620: vmm: Fix HLT loop while vcpu has requested virtual interrupts
Parents
rG03d8264dcaf4: bhyve: pass E820 table to guest
Branches
Unknown
Tags
Unknown