1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-25 16:13:17 +00:00
freebsd/usr.sbin/bhyve
Neel Natu d37f2adb38 Fix fault injection in bhyve.
The faulting instruction needs to be restarted when the exception handler
is done handling the fault. bhyve now does this correctly by setting
'vmexit[vcpu].inst_length' to zero so the %rip is not advanced.

A minor complication is that the fault injection APIs are used by instruction
emulation code that is shared by vmm.ko and bhyve. Thus the argument that
refers to 'struct vm *' in kernel or 'struct vmctx *' in userspace needs to
be loosely typed as a 'void *'.
2014-07-24 01:38:11 +00:00
..
acpi.c Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
acpi.h Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
ahci.h
atkbdc.c Fix typo and rename macro KDB_SYS_FLAG to KBD_SYS_FLAG. 2014-06-18 17:20:02 +00:00
bhyve.8 Sort command flags in usage output and the manpages. 2014-06-27 15:20:34 +00:00
bhyverun.c Fix fault injection in bhyve. 2014-07-24 01:38:11 +00:00
bhyverun.h Add emulation for legacy x86 task switching mechanism. 2014-07-16 21:26:26 +00:00
block_if.c Add a call to synthesize a C/H/S value for block emulations 2014-07-15 00:25:54 +00:00
block_if.h Add a call to synthesize a C/H/S value for block emulations 2014-07-15 00:25:54 +00:00
consport.c Handle single-byte reads from the bvmcons port (0x220) by returning 2014-04-08 21:02:03 +00:00
dbgport.c Mark the I/O ports used by the bhyve console and debug devices as system 2014-02-07 20:53:41 +00:00
dbgport.h
inout.c Fix fault injection in bhyve. 2014-07-24 01:38:11 +00:00
inout.h Add emulation of the "outsb" instruction. NetBSD guests use this to write to 2014-05-23 05:15:17 +00:00
ioapic.c Enhance the support for PCI legacy INTx interrupts and enable them in 2014-01-29 14:56:48 +00:00
ioapic.h Enhance the support for PCI legacy INTx interrupts and enable them in 2014-01-29 14:56:48 +00:00
Makefile Add emulation for legacy x86 task switching mechanism. 2014-07-16 21:26:26 +00:00
mem.c Emulate instructions emitted by OpenBSD/i386 version 5.5: 2014-07-23 04:28:51 +00:00
mem.h Emulate instructions emitted by OpenBSD/i386 version 5.5: 2014-07-23 04:28:51 +00:00
mevent_test.c
mevent.c Re-adding an event to a kqueue modifies the parameters of the original event. 2014-05-05 16:30:03 +00:00
mevent.h Extend the ACPI power management support to wire a virtual power button up 2013-12-28 04:01:05 +00:00
mptbl.c Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
mptbl.h
pci_ahci.c Use the blockif CHS routine to create fake CHS values, 2014-07-15 00:27:08 +00:00
pci_emul.c Provide APIs to directly get 'lowmem' and 'highmem' size directly. 2014-06-24 02:02:51 +00:00
pci_emul.h Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
pci_hostbridge.c
pci_irq.c Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
pci_irq.h Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
pci_lpc.c Activate vcpus from bhyve(8) using the ioctl VM_ACTIVATE_CPU instead of doing 2014-05-31 23:37:34 +00:00
pci_lpc.h Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
pci_passthru.c Use calloc() in favor of malloc + memset. 2014-04-22 18:55:21 +00:00
pci_uart.c Enhance the support for PCI legacy INTx interrupts and enable them in 2014-01-29 14:56:48 +00:00
pci_virtio_block.c Use MIN(a,b) from <sys/param.h> instead of rolling our own version. 2014-06-01 02:47:09 +00:00
pci_virtio_net.c Use calloc() in favor of malloc + memset. 2014-04-22 18:55:21 +00:00
pci_virtio_rnd.c Use calloc() in favor of malloc + memset. 2014-04-22 18:55:21 +00:00
pm.c Implement a PCI interrupt router to route PCI legacy INTx interrupts to 2014-05-15 14:16:55 +00:00
pmtmr.c Extend the ACPI power management support to wire a virtual power button up 2013-12-28 04:01:05 +00:00
post.c Rework the DSDT generation code a bit to generate more accurate info about 2014-01-02 21:26:59 +00:00
rtc.c Provide APIs to directly get 'lowmem' and 'highmem' size directly. 2014-06-24 02:02:51 +00:00
rtc.h
smbiostbl.c Set the version and date to fixed fields rather than using 2014-06-27 05:27:37 +00:00
smbiostbl.h Add SMBIOS support. 2014-03-04 17:12:06 +00:00
spinup_ap.c Use 'cpuset_t' to represent the vcpus active in a virtual machine. 2014-03-20 18:15:37 +00:00
spinup_ap.h
task_switch.c Fix fault injection in bhyve. 2014-07-24 01:38:11 +00:00
uart_emul.c Disable the 'uart_drain()' callback when the emulated receive FIFO is full. 2014-05-05 23:54:13 +00:00
uart_emul.h
virtio.c Use correct flag for event index. 2014-07-03 00:23:14 +00:00
virtio.h Extend capabilities to 64-bits in preparation for some API changes. 2014-07-05 02:38:53 +00:00
xmsr.c Ignore writes to microcode update MSR. This MSR is accessed by RHEL7 guest. 2014-04-30 02:08:27 +00:00
xmsr.h