From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59565) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZM2cL-0003In-73 for qemu-devel@nongnu.org; Sun, 02 Aug 2015 19:24:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZM2cD-0006kK-Sg for qemu-devel@nongnu.org; Sun, 02 Aug 2015 19:24:33 -0400 Received: from e23smtp07.au.ibm.com ([202.81.31.140]:42394) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZM2cD-0006ji-88 for qemu-devel@nongnu.org; Sun, 02 Aug 2015 19:24:25 -0400 Received: from /spool/local by e23smtp07.au.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 3 Aug 2015 09:24:22 +1000 From: Gavin Shan Date: Mon, 3 Aug 2015 09:23:17 +1000 Message-Id: <1438557800-6947-1-git-send-email-gwshan@linux.vnet.ibm.com> Subject: [Qemu-devel] [PATCH RESEND v2 0/3] sPAPR: Support EEH Error Injection List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: aik@ozlabs.ru, qemu-ppc@nongnu.org, Gavin Shan , david@gibson.dropbear.id.au The patchset depends on below Linux upstream commits: commit ed3e81f ("powerpc/eeh: Move PE state constants around") commit ec33d36 ("powerpc/eeh: Introduce eeh_pe_inject_err()") According to PAPR specification 2.7, there're 3 RTAS calls relevent to error injection: "ibm,open-errinjct", "ibm,close-errinjct", "ibm,errinjct". The userland utility "errinjct" running on guest utilizes those 3 RTAS calls like this way: Call "ibm,open-errinjct" that returns open-token, which is passed to "ibm,errinjct" together with error specific arguments to do error injection. Finally, to return the open-token by calling "ibm,close-errinject". "ibm,errinjct" can be used to inject various errors, not limited to EEH errors. However, this patchset is going to support injecting EEH errors only for VFIO PCI devices. ========= Changelog ========= v1 -> v2: * Rebased to git://github.com/dgibson/qemu.git (branch: spapr-next) * Remove specific PCI error types in hw/ppc/spapr.h. Use those macros asm-powerpc/eeh.h instead. Gavin Shan (3): linux-headers: Add eeh.h sPAPR: Support RTAS call ibm, {open, close}-errinjct sPAPR: Support RTAS call ibm,errinjct hw/ppc/spapr_pci.c | 42 +++++++++++ hw/ppc/spapr_pci_vfio.c | 56 +++++++++++++++ hw/ppc/spapr_rtas.c | 156 ++++++++++++++++++++++++++++++++++++++++ include/hw/pci-host/spapr.h | 2 + include/hw/ppc/spapr.h | 35 ++++++++- linux-headers/asm-powerpc/eeh.h | 56 +++++++++++++++ 6 files changed, 346 insertions(+), 1 deletion(-) create mode 100644 linux-headers/asm-powerpc/eeh.h -- 2.1.0