qemu/hw/misc
Vijay Mohan Pandarathil 7b4b0e9eda vfio: QEMU-AER: Qemu changes to support AER for VFIO-PCI devices
Add support for error containment when a VFIO device assigned to a KVM
guest encounters an error. This is for PCIe devices/drivers that support AER
functionality. When the host OS is notified of an error in a device either
through the firmware first approach or through an interrupt handled by the AER
root port driver, the error handler registered by the vfio-pci driver gets
invoked. The qemu process is signaled through an eventfd registered per
VFIO device by the qemu process. In the eventfd handler, qemu decides on
what action to take. In this implementation, guest is brought down to
contain the error.

The kernel patches for the above functionality has been already accepted.

This is a refresh of the QEMU patch which was reviewed earlier.
http://marc.info/?l=linux-kernel&m=136281557608087&w=2
This patch has the same contents and has been built after refreshing
to latest upstream and after the linux headers have been updated in qemu.

	- Create eventfd per vfio device assigned to a guest and register an
          event handler

	- This fd is passed to the vfio_pci driver through the SET_IRQ ioctl

	- When the device encounters an error, the eventfd is signalled
          and the qemu eventfd handler gets invoked.

	- In the handler decide what action to take. Current action taken
          is to stop the guest.

Signed-off-by: Vijay Mohan Pandarathil <vijaymohan.pandarathil@hp.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2013-07-15 15:49:49 -06:00
..
macio PPC: Add timer handler for newworld mac-io 2013-07-11 18:51:25 +02:00
a9scu.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
applesmc.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
arm_l2x0.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
arm_sysctl.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
cbus.c arm: fix location of some include files 2013-04-15 15:16:01 +02:00
debugexit.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
eccmemctl.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
exynos4210_pmu.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
imx_ccm.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
ivshmem.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
lm32_sys.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
Makefile.objs introduce a new qom device to deal with panicked event 2013-04-30 10:30:01 -05:00
max111x.c hw: move target-independent files to subdirectories 2013-04-08 18:13:12 +02:00
milkymist-hpdmc.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
milkymist-pfpu.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
mst_fpga.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
omap_clk.c hw: move other devices to hw/misc/, configure with default-configs/ 2013-04-08 18:13:16 +02:00
omap_gpmc.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
omap_l4.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
omap_sdrc.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
omap_tap.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
pc-testdev.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
pci-testdev.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
puv3_pm.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
pvpanic.c pci,misc enhancements 2013-07-08 08:00:23 -05:00
pxa2xx_pcmcia.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
sga.c isa: Use realizefn for ISADevice 2013-06-07 12:14:45 +02:00
slavio_misc.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
tmp105.c hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
tmp105.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
vfio.c vfio: QEMU-AER: Qemu changes to support AER for VFIO-PCI devices 2013-07-15 15:49:49 -06:00
vmport.c cpu: Replace cpu_single_env with CPUState current_cpu 2013-07-09 21:20:28 +02:00
zynq_slcr.c hw/m*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00