From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38113) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YW0OM-00061s-Bl for qemu-devel@nongnu.org; Thu, 12 Mar 2015 06:31:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YW0OI-0007O3-Bc for qemu-devel@nongnu.org; Thu, 12 Mar 2015 06:31:02 -0400 Received: from [59.151.112.132] (port=44753 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YW0OI-0007LI-0y for qemu-devel@nongnu.org; Thu, 12 Mar 2015 06:30:58 -0400 From: Chen Fan Date: Thu, 12 Mar 2015 18:23:52 +0800 Message-ID: MIME-Version: 1.0 Content-Type: text/plain Subject: [Qemu-devel] [PATCH v5 0/7] pass aer error to guest for vfio device List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: izumi.taku@jp.fujitsu.com, alex.williamson@redhat.com For now, for vfio pci passthough devices when qemu receives an error from host aer report, there just terminate the guest, but usually user want to know what error occurred but stop the guest, so this patches add aer capability support for vfio device, and pass the error to guest, and have guest driver to recover from the error. and turning on SERR# for error forwording in bridge control register patch in seabios has been merged. v3-v4: 1. add 'x-aer' for user to off aer capability. 2. refactor vfio device to parse extended capabilities. v2-v3: 1. refactor vfio device to parse extended capability. 2. add global property for piix4 to disable vfio aer cap. v1-v2: 1. turn on SERR# for bridge control register in firmware. 2. initilize aer capability for vfio device. 3. fix some trivial bug. Chen Fan (7): vfio: add pcie extanded capability support aer: impove pcie_aer_init to support vfio device vfio: add aer support for vfio device pcie_aer: expose pcie_aer_msg() interface vfio-pci: pass the aer error to guest vfio: add 'x-aer' property to expose aercap pc: add PC_I440FX_COMPAT to disable aercap for vifo device hw/i386/pc_piix.c | 9 +++ hw/i386/pc_q35.c | 4 + hw/pci-bridge/ioh3420.c | 2 +- hw/pci-bridge/xio3130_downstream.c | 2 +- hw/pci-bridge/xio3130_upstream.c | 2 +- hw/pci/pcie_aer.c | 6 +- hw/vfio/pci.c | 158 +++++++++++++++++++++++++++++++++++-- include/hw/compat.h | 10 +++ include/hw/pci/pcie_aer.h | 3 +- 9 files changed, 182 insertions(+), 14 deletions(-) -- 1.9.3