On Sat, Aug 01, 2015 at 02:31:30PM +1000, Gavin Shan wrote: It seems my email doesn't work well in some cases. There are 3 patches, but only 2 were sent successfully. Please ignore it and I'll resend the whole patchset.
Thanks, Gavin >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 >