[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH RFC v6 06/11] vfio: add 'aer' property to expose aer
From: |
Chen Fan |
Subject: |
[Qemu-devel] [PATCH RFC v6 06/11] vfio: add 'aer' property to expose aercap |
Date: |
Wed, 29 Apr 2015 16:48:34 +0800 |
add 'aer' property to let user able to decide whether expose
the aer capability.
Signed-off-by: Chen Fan <address@hidden>
---
hw/vfio/pci.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index cdd8f24..c306efc 100644
--- a/hw/vfio/pci.c
+++ b/hw/vfio/pci.c
@@ -159,6 +159,8 @@ typedef struct VFIOPCIDevice {
#define VFIO_FEATURE_ENABLE_VGA (1 << VFIO_FEATURE_ENABLE_VGA_BIT)
#define VFIO_FEATURE_ENABLE_REQ_BIT 1
#define VFIO_FEATURE_ENABLE_REQ (1 << VFIO_FEATURE_ENABLE_REQ_BIT)
+#define VFIO_FEATURE_ENABLE_AER_BIT 2
+#define VFIO_FEATURE_ENABLE_AER (1 << VFIO_FEATURE_ENABLE_AER_BIT)
int32_t bootindex;
uint8_t pm_cap;
bool has_vga;
@@ -2737,6 +2739,10 @@ static int vfio_setup_aer(VFIOPCIDevice *vdev, int pos,
uint16_t size)
uint32_t severity, errcap;
int ret;
+ if (!(vdev->features & VFIO_FEATURE_ENABLE_AER)) {
+ return 0;
+ }
+
errcap = vfio_pci_read_config(pdev, pdev->exp.aer_cap + PCI_ERR_CAP, 4);
/*
* The ability to record multiple headers is depending on
@@ -3699,6 +3705,8 @@ static Property vfio_pci_dev_properties[] = {
VFIO_FEATURE_ENABLE_VGA_BIT, false),
DEFINE_PROP_BIT("x-req", VFIOPCIDevice, features,
VFIO_FEATURE_ENABLE_REQ_BIT, true),
+ DEFINE_PROP_BIT("aer", VFIOPCIDevice, features,
+ VFIO_FEATURE_ENABLE_AER_BIT, true),
DEFINE_PROP_INT32("bootindex", VFIOPCIDevice, bootindex, -1),
DEFINE_PROP_BOOL("x-mmap", VFIOPCIDevice, vbasedev.allow_mmap, true),
/*
--
1.9.3
- [Qemu-devel] [PATCH RFC v6 00/11] vfio-pci: pass the aer error to guest, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 04/11] pcie_aer: expose pcie_aer_msg() interface, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 02/11] aer: impove pcie_aer_init to support vfio device, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 03/11] vfio: add aer support for vfio device, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 01/11] vfio: add pcie extanded capability support, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 05/11] vfio-pci: pass the aer error to guest, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 06/11] vfio: add 'aer' property to expose aercap,
Chen Fan <=
- [Qemu-devel] [PATCH RFC v6 07/11] pc: add HW_COMPAT_2_2 to disable aercap for vifo device, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 08/11] vfio: extract vfio_get_hot_reset_info as a single function, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 09/11] qdev: add bus reset_notifiers callbacks for host bus reset, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 10/11] vfio: squeeze out vfio_pci_do_hot_reset for support bus reset, Chen Fan, 2015/04/29
- [Qemu-devel] [PATCH RFC v6 11/11] vfio: add bus reset notifier for host bus reset, Chen Fan, 2015/04/29