[Bug 292798] bhyve: VMX triple fault in efi windows bootloader

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 29 Jan 2026 02:01:23 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292798

            Bug ID: 292798
           Summary: bhyve: VMX triple fault in efi windows bootloader
           Product: Base System
           Version: 15.0-STABLE
          Hardware: amd64
                OS: Any
            Status: New
          Keywords: bhyve
          Severity: Affects Some People
          Priority: ---
         Component: bhyve
          Assignee: virtualization@FreeBSD.org
          Reporter: nikolaytihonov2022@gmail.com

Hi. 

I'm having not so great time with Windows Server under Bhyve. In fact it
doesn't boot past windows bootmgr.efi or bootmgfw.efi - VMX Triple Fault

root@z440:/usr/local/vm/vm-720 # bhyve \
 -c 1,sockets=1,cores=1,threads=1    \
     -m 4096M -w  \
     -l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd     \
     -U 56da390d-fc0d-11f0-81a2-5cb901933e24 \
     -s 0,hostbridge \
     -s 31,lpc   \
     -s 3:0,nvme,/dev/zvol/zroot/vm/vm-710-disk0 \
     vm-720


vm exit[0]
        reason          VMX
        rip             0x00000000015d1f37
        inst_length     2
        status          0
        exit_reason     2 (Triple fault)
        qualification   0x0000000000000000
        inst_type               0
        inst_error   


What have been tried:
1. Adding/removing virtio devices (NICs, disks)
2. Adding/removing nvme disk
3. Changing guest CPU (sockets/cores/threads)
4. Changing guest RAM size
5. Changing hostbridge to hostbridge_amd
6. Forcing virtio devices to use MSI instead of MSI-X (-W)
7. Igoring MSRs (-w)
8. x2APIC (-x)
9. Disabling MPtable geenration (-Y)

As well as I tried different Windows versions. Booting from ISO directly, or
booting from old backup - triple fault, but at different places.

This server currently runs 6 bhyve VMs thorough vm-bhyve. Also runs VNET jails
and performs IPFW firewalling.
FreeBSD and Linux UEFI guests run without issues flawlessly under Bhyve.

Software FreeBSD 15-STABLE

FreeBSD z440.mykola.lain 15.0-STABLE FreeBSD 15.0-STABLE
stable/15-n281998-d76fb46307da GENERIC amd64


Hardware by Hewlett-Packard

HP Z440

Jan 28 14:32:54 z440 kernel: CPU: Intel(R) Xeon(R) CPU E5-2683 v3 @ 2.00GHz
(1995.47-MHz K8-class CPU)
Jan 28 14:32:54 z440 kernel:   Origin="GenuineIntel"  Id=0x306f2  Family=0x6 
Model=0x3f  Stepping=2
Jan 28 14:32:54 z440 kernel:  
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Jan 28 14:32:54 z440 kernel:  
Features2=0x7ffefbff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,SDBG,FMA,CX16,xTPR,PDCM,PCID,DCA,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
Jan 28 14:32:54 z440 kernel:   AMD
Features=0x2c000800<SYSCALL,Page1GB,RDTSCP,LM>
Jan 28 14:32:54 z440 kernel:   AMD Features2=0x21<LAHF,ABM>
Jan 28 14:32:54 z440 kernel:   Structured Extended
Features=0x37ab<FSGSBASE,TSCADJ,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,PQM,NFPUSG>
Jan 28 14:32:54 z440 kernel:   Structured Extended
Features3=0x9c000400<MD_CLEAR,IBPB,STIBP,L1DFL,SSBD>
Jan 28 14:32:54 z440 kernel:   XSAVE Features=0x1<XSAVEOPT>
Jan 28 14:32:54 z440 kernel:   VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID,VID,PostIntr
Jan 28 14:32:54 z440 kernel:   TSC: P-state invariant, performance statistics
Jan 28 14:32:54 z440 kernel: real memory  = 137438953472 (131072 MB)
Jan 28 14:32:54 z440 kernel: avail memory = 134222069760 (128004 MB)



BIOS is up to date

Handle 0x0000, DMI type 0, 24 bytes
Platform Firmware Information
        Vendor: Hewlett-Packard
        Version: M60 v02.61
        Release Date: 03/23/2023
        Address: 0xF0000
        Runtime Size: 64 KiB
        ROM Size: 16 MiB
        Characteristics:
                PCI is supported
                PNP is supported
                Firmware is upgradeable
                Firmware shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                EDD is supported
                Print screen service is supported (int 5h)
                8042 keyboard services are supported (int 9h)
                Serial services are supported (int 14h)
                Printer services are supported (int 17h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Function key-initiated network boot is supported
                Targeted content distribution is supported
                UEFI is supported
        Platform Firmware Revision: 2.61


sysctl hw.vmm

hw.vmm.amdvi.domain_id: 0
hw.vmm.amdvi.disable_io_fault: 0
hw.vmm.amdvi.ptp_level: 4
hw.vmm.amdvi.host_ptp: 1
hw.vmm.amdvi.enable: 0
hw.vmm.amdvi.count: 0
hw.vmm.npt.pmap_flags: 0
hw.vmm.svm.num_asids: 0
hw.vmm.svm.disable_npf_assist: 0
hw.vmm.svm.features: 4294967295
hw.vmm.svm.vmcb_clean: 1023
hw.vmm.vmx.l1d_flush_sw: 0
hw.vmm.vmx.l1d_flush: 1
hw.vmm.vmx.vpid_alloc_failed: 0
hw.vmm.vmx.posted_interrupt_vector: 253
hw.vmm.vmx.cap.posted_interrupts: 1
hw.vmm.vmx.cap.virtual_interrupt_delivery: 1
hw.vmm.vmx.cap.tpr_shadowing: 1
hw.vmm.vmx.cap.invpcid: 1
hw.vmm.vmx.cap.monitor_trap: 1
hw.vmm.vmx.cap.unrestricted_guest: 1
hw.vmm.vmx.cap.rdtscp: 1
hw.vmm.vmx.cap.rdpid: 0
hw.vmm.vmx.cap.wbinvd_exit: 1
hw.vmm.vmx.cap.pause_exit: 1
hw.vmm.vmx.cap.halt_exit: 1
hw.vmm.vmx.initialized: 1
hw.vmm.vmx.cr4_zeros_mask: 18446744073708017664
hw.vmm.vmx.cr4_ones_mask: 8192
hw.vmm.vmx.cr0_zeros_mask: 18446744071025197056
hw.vmm.vmx.cr0_ones_mask: 32
hw.vmm.vmx.no_flush_rsb: 0
hw.vmm.ept.pmap_flags: 1532
hw.vmm.vrtc.flag_broken_time: 1
hw.vmm.ppt.devices: 0
hw.vmm.iommu.enable: 1
hw.vmm.iommu.initialized: 0
hw.vmm.bhyve_xcpuids: 0
hw.vmm.topology.cpuid_leaf_b: 1
hw.vmm.create: 
hw.vmm.destroy: 
hw.vmm.maxcpu: 28
hw.vmm.trap_wbinvd: 0
hw.vmm.trace_guest_exceptions: 0
hw.vmm.ipinum: 252
hw.vmm.halt_detection: 1

-- 
You are receiving this mail because:
You are the assignee for the bug.