64414cc00f
When the I/O MMU is active in bhyve, all PCI devices need valid entries in the DMAR context tables. The I/O MMU code does a single enumeration of the available PCI devices during initialization to add all existing devices to a domain representing the host. The ppt(4) driver then moves pass through devices in and out of domains for virtual machines as needed. However, when new PCI devices were added at runtime either via SR-IOV or HotPlug, the I/O MMU tables were not updated. This change adds a new set of EVENTHANDLERS that are invoked when PCI devices are added and deleted. The I/O MMU driver in bhyve installs handlers for these events which it uses to add and remove devices to the "host" domain. Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D7667 |
||
---|---|---|
.. | ||
eisa_pci.c | ||
fixup_pci.c | ||
hostb_pci.c | ||
ignore_pci.c | ||
isa_pci.c | ||
pci_host_generic.c | ||
pci_host_generic.h | ||
pci_if.m | ||
pci_iov_if.m | ||
pci_iov_private.h | ||
pci_iov_schema.c | ||
pci_iov.c | ||
pci_iov.h | ||
pci_pci.c | ||
pci_private.h | ||
pci_subr.c | ||
pci_user.c | ||
pci.c | ||
pcib_if.m | ||
pcib_private.h | ||
pcib_support.c | ||
pcireg.h | ||
pcivar.h | ||
schema_private.h | ||
vga_pci.c |