freebsd-nq/sys
John Baldwin 64414cc00f Update the I/O MMU in bhyve when PCI devices are added and removed.
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
2016-09-06 20:17:54 +00:00
..
amd64 Update the I/O MMU in bhyve when PCI devices are added and removed. 2016-09-06 20:17:54 +00:00
arm Let knlist_add do the locking part 2016-09-06 19:36:28 +00:00
arm64 Enable superpages on arm64 by default. These seem to be stable, having 2016-09-04 17:50:23 +00:00
boot loader.efi: Bump the staging size to 64M. 2016-09-06 17:58:58 +00:00
bsm
cam Decode some new ATA commands found in ACS-3. 2016-08-27 19:51:37 +00:00
cddl fix zfs pool creation accidentally broken by r305331 2016-09-06 06:09:12 +00:00
compat Add missing header dependency. 2016-08-24 09:57:19 +00:00
conf Remove remnants of PERFMON and I586_PMC_GUPROF from amd64. 2016-09-06 19:25:32 +00:00
contrib Update Annapurna Alpine HAL to a newer version. 2016-09-06 14:59:13 +00:00
crypto Connect the SHA-512t256 and Skein hashing algorithms to ZFS 2016-05-31 04:12:14 +00:00
ddb Expand error messages: print symbol names, parentheses and shift tokens, 2016-08-28 19:33:09 +00:00
dev Update the I/O MMU in bhyve when PCI devices are added and removed. 2016-09-06 20:17:54 +00:00
fs Implement VOP_FDATASYNC() for msdosfs. 2016-08-15 19:17:00 +00:00
gdb
geom Do not invoke resize event if initial disk size is zero. Some disks 2016-08-01 20:54:54 +00:00
gnu Revert changes for local testing, inadvertantly commited in r300811. 2016-05-26 23:59:42 +00:00
i386 Remove support for idle page zeroing. 2016-09-03 20:38:13 +00:00
isa
kern cv: do a lockless check for no waiters in cv_signal and cv_broadcastpri 2016-09-06 17:16:59 +00:00
kgssapi
libkern
mips [BHND/USB] Port of EHCI/OHCI support from ZRouter 2016-09-05 16:06:52 +00:00
modules Make some additional -Wconstant-conversion warnings from clang 3.9.0 in 2016-09-04 17:56:55 +00:00
net hyperv/hn: Stringent RNDIS packet message length/offset check. 2016-09-06 03:20:06 +00:00
net80211 [net80211] correctly lock the ifp before accessing the lladdr. 2016-08-18 01:25:12 +00:00
netgraph Avoid panic from ng_uncallout when unpluggin ethernet cable with active 2016-08-08 19:31:01 +00:00
netinet With clang 3.9.0, compiling sys/netinet/igmp.c results in the following 2016-09-04 17:23:10 +00:00
netinet6 Fix L2 caching for UDP over IPv6 2016-08-24 00:52:30 +00:00
netipsec Remove redundant sanity checks from ipsec[46]_common_input_cb(). 2016-08-31 11:51:52 +00:00
netnatm
netpfil Try to fix gcc compilation errors (which are right). 2016-08-18 10:26:15 +00:00
netsmb
nfs Hide the boottime and bootimebin globals, provide the getboottime(9) 2016-07-27 11:08:59 +00:00
nfsclient
nfsserver
nlm When sleeping waiting for either local or remote advisory lock, 2016-06-26 20:08:42 +00:00
ofed Do not free an uninitialized pointer on soaccept failure in the iWARP 2016-08-26 08:25:28 +00:00
opencrypto opencrypto AES-ICM: Fix heap corruption typo 2016-08-01 22:57:03 +00:00
pc98 Remove the ie(4) driver for Intel 82586 ISA Ethernet adapters. 2016-08-20 00:49:29 +00:00
powerpc Remove support for idle page zeroing. 2016-09-03 20:38:13 +00:00
riscv Remove support for idle page zeroing. 2016-09-03 20:38:13 +00:00
rpc Hide the boottime and bootimebin globals, provide the getboottime(9) 2016-07-27 11:08:59 +00:00
security Audit the accepted (or rejected) username argument to setlogin(2). 2016-08-20 20:28:08 +00:00
sparc64 Replace the number 4 in pmap_ts_referenced() by PMAP_TS_REFERENCED_MAX, 2016-09-04 22:08:04 +00:00
sys Resolve deadlock between device_detach() and usbd_do_request_flags() 2016-09-05 15:35:58 +00:00
teken
tests
tools Consider CROSS_BINUTILS_PREFIX environment variable so we use correct 2016-08-10 13:49:17 +00:00
ufs Renumber the advertising clause. 2016-09-06 15:17:35 +00:00
vm Respect the caller's hints when performing swap readahead. 2016-09-04 00:25:49 +00:00
x86 Remove remnants of PERFMON and I586_PMC_GUPROF from amd64. 2016-09-06 19:25:32 +00:00
xdr
xen xen: Correct typo in #undef for symbol NBPL 2016-06-06 14:55:46 +00:00
Makefile