vfio-pci: Use byte granularity in config map
authorAlex Williamson <alex.williamson@redhat.com>
Mon, 1 Apr 2013 15:03:44 +0000 (09:03 -0600)
committerAlex Williamson <alex.williamson@redhat.com>
Mon, 1 Apr 2013 15:03:44 +0000 (09:03 -0600)
commit180b1381078924b2442a42cded514afd6faff458
tree00799fef8be3d2afc75aaf0040159919f1031ece
parent0bced2f7280cd12b66229ba55d05c62a4eef6cfd
vfio-pci: Use byte granularity in config map

The config map previously used a byte per dword to map regions of
config space to capabilities.  Modulo a bug where we round the length
of capabilities down instead of up, this theoretically works well and
saves space so long as devices don't try to hide registers in the gaps
between capabilities.  Unfortunately they do exactly that so we need
byte granularity on our config space map.  Increase the allocation of
the config map and split accesses at capability region boundaries.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Tested-by: Gavin Shan <shangw@linux.vnet.ibm.com>
drivers/vfio/pci/vfio_pci_config.c