summary refs log tree commit diff stats
path: root/hw/core/qdev-properties-system.c
diff options
context:
space:
mode:
authorAlex Williamson <alex.williamson@redhat.com>2014-01-16 09:22:07 -0700
committerAlex Williamson <alex.williamson@redhat.com>2014-01-16 09:22:07 -0700
commitd3a2fd9b29e43e202315d5e99399b99622469c4a (patch)
tree290b0c3d589f75a8dff793688bd715b9e1b00352 /hw/core/qdev-properties-system.c
parente638073c569e801ce9def2016a84f955cbbca779 (diff)
downloadfocaccia-qemu-d3a2fd9b29e43e202315d5e99399b99622469c4a.tar.gz
focaccia-qemu-d3a2fd9b29e43e202315d5e99399b99622469c4a.zip
vfio: Filter out bogus mappings
Since 57271d63 we now see spurious mappings with the upper bits set
if 64bit PCI BARs are sized while enabled.  The guest writes a mask
of 0xffffffff to the lower BAR to size it, then restores it, then
writes the same mask to the upper BAR resulting in a spurious BAR
mapping into the last 4G of the 64bit address space.  Most
architectures do not support or make use of the full 64bits address
space for PCI BARs, so we filter out mappings with the high bit set.
Long term, we probably need to think about vfio telling us the
address width limitations of the IOMMU.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/core/qdev-properties-system.c')
0 files changed, 0 insertions, 0 deletions