Properly clean up the sr-iov rman
don't touch the child at all if its not our direct child
Don't bother checking for a NULL dinfo
remove most knowledge of ARI from IOV code
Move all ARI-related configuration to the pcib code
Fail a request if additional bus numbers would be required

As we don't yet support allocating additional bus numbers for VFs,
explicitly fail any request to allocate VFs if they won't all fit
on the same PCI bus as the PF.
Don't try to clean up (and crash) on EBUSY

If the user tries to create VFs when VFs are already active, we
need to bail out immediately rather than trying to clean up the
structures being used to track the existing VFs.
Activate the SR-IOV BAR when it is allocated.
Remove debugging printf
explicitly configure the system page size
correct definition of Memory Space Enable bit
correct whitespace
Don't enable VFs or their memory spaces until BARs are programmed
Use standard method for allocating and activating resources.

Create a reserved resouce for VF BARs so that we can use
resource_list_alloc() to allocate and activate BARs rather
than doing it manually.  This fixes a bug where VF BARs
did not work because bus_activate_resource() was not being
called on the resource.
Use a wider type for the offset to a BAR.

SR-IOV BARs will be located outside of the 256 byte PCI config
space, so we need at least a 16-bit int to represent the offset to
such BARs.
Allow ppt driver to attach to SR-IOV devices
Allow PCIOCGETBAR ioctl to see VF BARs

Create pci_map structures for VF BARs.  This allows the PCIOCGETBAR
ioctl to return the values in those bars.  This is need both by
pciconf -b and to properly pass through VFs to VMs in bhyve.
Allow PCIOCREAD ioctl to read VF DID/VID

VFs do not implement the DID or VID registers, so pci_read_config
has to emulate those registers itself on VFs.  Do not allow the
PCIOCREAD ioctl to bypass pci_read_config and read the wrong value
for a VF's VID or DID.

For symmetry do the same with pci_write_config.
Return an error if we can't allocate a bus number for any VF
Allow VFs to be specified as bhyve passthrough devices