qemu/include/hw
Alexey Kardashevskiy d78c19b5cf memory: Fix IOMMU replay base address
Since a788f227 "memory: Allow replay of IOMMU mapping notifications"
when new VFIO listener is added, all existing IOMMU mappings are
replayed. However there is a problem that the base address of
an IOMMU memory region (IOMMU MR) is ignored which is not a problem
for the existing user (which is pseries) with its default 32bit DMA
window starting at 0 but it is if there is another DMA window.

This stores the IOMMU's offset_within_address_space and adjusts
the IOVA before calling vfio_dma_map/vfio_dma_unmap.

As the IOMMU notifier expects IOVA offset rather than the absolute
address, this also adjusts IOVA in sPAPR H_PUT_TCE handler before
calling notifier(s).

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2016-05-26 11:12:08 -06:00
..
acpi qemu-common: stop including qemu/host-utils.h from qemu-common.h 2016-05-19 16:42:28 +02:00
arm qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
audio
block
char
cpu
cris
display
dma
gpio
i2c
i386 pc: Set CPU model-id on compat_props for pc <= 2.4 2016-05-23 13:19:36 -03:00
input
intc
ipack
ipmi
isa hw: clean up hw/hw.h includes 2016-05-19 16:42:30 +02:00
kvm
lm32
m68k
mem pc-dimm: correct comment of MemoryHotplugState 2016-05-20 14:28:52 -03:00
mips mips: use MIPSCPU instead of CPUMIPSState 2016-05-19 16:42:27 +02:00
misc
net
nvram
pci
pci-host
ppc hw: cannot include hw/hw.h from user emulation 2016-05-19 16:42:28 +02:00
s390x s390x: reorganize CSS bits between cpu.h and other headers 2016-05-19 16:42:28 +02:00
scsi
sd qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
sh4
smbios
sparc
ssi
timer
tricore
unicore32
usb
vfio memory: Fix IOMMU replay base address 2016-05-26 11:12:08 -06:00
virtio rng: rename RndRandom to RndRandom 2016-05-24 11:38:22 +01:00
watchdog
xen xen: add pvUSB backend 2016-05-23 13:30:03 +02:00
boards.h machine: add properties to compat_props incrementaly 2016-05-20 14:28:54 -03:00
bt.h
compat.h
devices.h
elf_ops.h
empty_slot.h
fw-path-provider.h
hotplug.h
hw.h hw: clean up hw/hw.h includes 2016-05-19 16:42:30 +02:00
ide.h
irq.h
loader.h
nmi.h nmi: remove x86 specific nmi handling 2016-05-23 16:53:46 +02:00
pcmcia.h
platform-bus.h
ptimer.h
qdev-core.h
qdev-dma.h
qdev-properties.h
qdev.h
stream.h
sysbus.h hw: remove pio_addr_t 2016-05-19 16:42:30 +02:00
usb.h