freebsd-nq/usr.sbin/bhyve
John Baldwin 330baf58c6 Extend the support for local interrupts on the local APIC:
- Add a generic routine to trigger an LVT interrupt that supports both
  fixed and NMI delivery modes.
- Add an ioctl and bhyvectl command to trigger local interrupts inside a
  guest.  In particular, a global NMI similar to that raised by SERR# or
  PERR# can be simulated by asserting LINT1 on all vCPUs.
- Extend the LVT table in the vCPU local APIC to support CMCI.
- Flesh out the local APIC error reporting a bit to cache errors and
  report them via ESR when ESR is written to.  Add support for asserting
  the error LVT when an error occurs.  Raise illegal vector errors when
  attempting to signal an invalid vector for an interrupt or when sending
  an IPI.
- Ignore writes to reserved bits in LVT entries.
- Export table entries the MADT and MP Table advertising the stock x86
  config of LINT0 set to ExtInt and LINT1 wired to NMI.

Reviewed by:	neel (earlier version)
2013-12-23 19:29:07 +00:00
..
acpi.c Extend the support for local interrupts on the local APIC: 2013-12-23 19:29:07 +00:00
acpi.h Make the virtual ioapic available unconditionally in a bhyve virtual machine. 2013-10-31 05:44:45 +00:00
ahci.h Import Zhixiang Yu's GSoC'13 AHCI emulation: 2013-10-04 18:31:38 +00:00
atpic.c Allow 8259 registers to be read. This is a transient condition 2013-06-28 06:25:04 +00:00
bhyve.8 mdoc: nuke whitespace. 2013-12-23 15:00:15 +00:00
bhyverun.c Add a parameter to 'vcpu_set_state()' to enforce that the vcpu is in the IDLE 2013-12-22 20:29:59 +00:00
bhyverun.h Changes required for OpenBSD/amd64: 2013-10-17 22:01:17 +00:00
block_if.c Add the VM name to the process name with setproctitle(). 2013-11-06 00:25:17 +00:00
block_if.h Block-layer backend interface for bhyve block-io device emulations. 2013-10-04 16:52:03 +00:00
consport.c Improve PCI BAR emulation: 2013-04-10 02:12:39 +00:00
dbgport.c Improve PCI BAR emulation: 2013-04-10 02:12:39 +00:00
dbgport.h Change the behavior of bhyve such that the gdb listening port is opt-in 2013-10-08 16:36:17 +00:00
elcr.c
inout.c Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
inout.h Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
legacy_irq.c Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
legacy_irq.h Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
Makefile bhyve(8) man page. 2013-12-13 08:31:13 +00:00
mem.c Remove obsolete comment about lack of locking for MMIO range lookup. 2013-04-10 18:53:14 +00:00
mem.h Improve PCI BAR emulation: 2013-04-10 02:12:39 +00:00
mevent_test.c Add simplistic periodic timer support to mevent using kqueue's 2013-09-19 04:48:26 +00:00
mevent.c Add the VM name to the process name with setproctitle(). 2013-11-06 00:25:17 +00:00
mevent.h Add simplistic periodic timer support to mevent using kqueue's 2013-09-19 04:48:26 +00:00
mptbl.c Extend the support for local interrupts on the local APIC: 2013-12-23 19:29:07 +00:00
mptbl.h Make the virtual ioapic available unconditionally in a bhyve virtual machine. 2013-10-31 05:44:45 +00:00
pci_ahci.c The Data Byte Count (DBC) field of a Physical Region Descriptor 2013-11-26 03:00:54 +00:00
pci_emul.c Add an API to deliver message signalled interrupts to vcpus. This allows 2013-12-16 19:59:31 +00:00
pci_emul.h Add an API to deliver message signalled interrupts to vcpus. This allows 2013-12-16 19:59:31 +00:00
pci_hostbridge.c Changes required for OpenBSD/amd64: 2013-10-17 22:01:17 +00:00
pci_lpc.c Add an ioctl to assert and deassert an ioapic pin atomically. This will be used 2013-11-23 03:56:03 +00:00
pci_lpc.h Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
pci_passthru.c Rename the ambiguously named 'vm_setup_msi()' and 'vm_setup_msix()' to 2013-12-18 03:58:51 +00:00
pci_uart.c Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
pci_virtio_block.c Export the block size capability to guests. 2013-10-23 18:54:58 +00:00
pci_virtio_net.c Add the VM name to the process name with setproctitle(). 2013-11-06 00:25:17 +00:00
pit_8254.c Add an ioctl to assert and deassert an ioapic pin atomically. This will be used 2013-11-23 03:56:03 +00:00
pit_8254.h
pmtmr.c Unsynchronized TSCs on the host require special handling in bhyve: 2013-04-10 05:59:07 +00:00
post.c
rtc.c Changes required for OpenBSD/amd64: 2013-10-17 22:01:17 +00:00
rtc.h Implement RTC CMOS nvram. Init some fields that are used 2013-07-11 03:54:35 +00:00
spinup_ap.c Add a new capability, VM_CAP_ENABLE_INVPCID, that can be enabled to expose 2013-10-16 18:20:27 +00:00
spinup_ap.h
uart_emul.c Allow bhyve and bhyveload to attach to tty devices. 2013-11-27 00:21:37 +00:00
uart_emul.h Add support for PCI-to-ISA LPC bridge emulation. If the LPC bus is attached 2013-10-29 00:18:11 +00:00
virtio.c Pass the number of supported vectors to pci_emul_add_msicap() and 2013-09-17 18:42:13 +00:00
virtio.h Major rework of the virtio code. Split out common parts, and modify 2013-07-17 23:37:33 +00:00
xmsr.c Add an option to ignore accesses by the guest to unimplemented MSRs. 2013-12-19 22:27:28 +00:00
xmsr.h Add an option to ignore accesses by the guest to unimplemented MSRs. 2013-12-19 22:27:28 +00:00