qemu/hw
Alex Williamson 87ca1f77b1 vfio-pci: Fail initfn on DMA mapping errors
The vfio-pci initfn will currently succeed even if DMA mappings fail.
A typical reason for failure is if the user does not have sufficient
privilege to lock all the memory for the guest.  In this case, the
device gets attached, but can only access a portion of guest memory
and is extremely unlikely to work.

DMA mappings are done via a MemoryListener, which provides no direct
error return path.  We therefore stuff the errno into our container
structure and check for error after registration completes.  We can
also test for mapping errors during runtime, but our only option for
resolution at that point is to kill the guest with a hw_error.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2014-01-16 09:22:07 -07:00
..
9pfs virtio-9p: Convert to QOM realize 2013-12-09 21:46:49 +01:00
acpi acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
alpha sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
arm QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
audio QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
block Merge remote-tracking branch 'stefanha/block' into staging 2014-01-10 11:05:05 -08:00
bt Preparation for usb-bt-dongle conditional build 2013-09-10 11:14:41 +02:00
char Merge remote-tracking branch 'mjt/trivial-patches' into staging 2014-01-09 11:24:12 -08:00
core Merge remote branch 'luiz/queue/qmp' into qmpq 2014-01-14 12:10:08 +10:00
cpu icc_bus: QOM'ify ICC 2013-12-24 18:02:18 +01:00
cris axis_dev88: Don't enforce use of kernel for qtest 2013-11-05 17:47:29 +01:00
display sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
dma Merge remote branch 'luiz/queue/qmp' into qmpq 2014-01-14 12:10:08 +10:00
gpio hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
i2c hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
i386 acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
ide vt82c686: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
input QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
intc QOM infrastructure fixes and device conversions 2014-01-09 11:24:48 -08:00
isa vt82c686: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
lm32 milkymist: Suppress -kernel/-bios/-drive error for qtest 2013-11-05 17:47:29 +01:00
m68k an5206: Don't enforce use of kernel for qtest 2013-11-05 17:47:29 +01:00
microblaze Microblaze: Convert Microblaze-pic handling to GPIOs 2014-01-14 11:08:36 +10:00
mips pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
misc vfio-pci: Fail initfn on DMA mapping errors 2014-01-16 09:22:07 -07:00
moxie memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
net Merge remote branch 'luiz/queue/qmp' into qmpq 2014-01-14 12:10:08 +10:00
nvram sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
openrisc openrisc-timer: Reduce overhead, Separate clock update functions 2013-11-20 21:46:45 +08:00
pci acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
pci-bridge pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
pci-host acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
pcmcia pcmcia/pxa2xx: QOM'ify PXA2xxPCMCIAState 2013-11-05 18:06:52 +01:00
ppc pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
s390x acpi,pci,pc,fedora,virtio fixes and enhancements 2014-01-10 11:04:48 -08:00
scsi scsi-disk: add UNMAP limits to block limits VPD page 2013-12-22 14:59:33 +01:00
sd sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
sh4 pci-host: Consistently set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
sparc sun4m: Add FCode ROM for TCX framebuffer 2013-11-21 17:38:52 +01:00
sparc64 pc,pci,virtio fixes and cleanups 2013-09-03 12:31:07 -05:00
ssi xilinx_spi: QOM cast cleanup 2013-07-29 21:07:01 +02:00
timer isa: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
tpm aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
unicore32 puv3: Turn puv3_load_kernel() into a no-op for qtest without -kernel 2013-11-05 17:47:28 +01:00
usb Improvements for usb3 bulk stream (usb core, xhci). 2013-12-06 12:54:36 -08:00
virtio Merge remote-tracking branch 'stefanha/block' into staging 2014-01-10 11:05:05 -08:00
watchdog qemu-option: Remove qemu_opts_create_nofail 2014-01-06 15:02:30 -05:00
xen apic: QOM'ify APIC 2013-12-24 18:02:18 +01:00
xtensa pc,pci,virtio fixes and cleanups 2013-09-03 12:31:07 -05:00
Makefile.objs pcmcia: QOM'ify PCMCIACardState and MicroDriveState 2013-11-05 18:06:52 +01:00