qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Gavin Shan <gwshan@linux.vnet.ibm.com>
To: qemu-devel@nongnu.org
Cc: aik@ozlabs.ru, agraf@suse.de,
	Gavin Shan <gwshan@linux.vnet.ibm.com>,
	alex.williamson@redhat.com, qemu-ppc@nongnu.org,
	david@gibson.dropbear.id.au
Subject: [Qemu-devel] [PATCH v15 0/2] EEH Support for VFIO Devices
Date: Mon,  5 Jan 2015 11:26:26 +1100	[thread overview]
Message-ID: <1420417588-32562-1-git-send-email-gwshan@linux.vnet.ibm.com> (raw)

The series of patches adds support EEH for VFIO PCI devices on sPAPR platform.
It requires corresponding host kernel support, which was merged during 3.17
merge window. This patchset has been rebased to Alex Graf's QEMU repository:

   git://github.com/agraf/qemu.git (branch: ppc-next)

The implementations notes are below. Please consider for merging!

* RTAS calls are received in spapr_pci.c, sanity check is done there. RTAS
  handlers handle what they can. If there is something it cannot handle and
  sPAPRPHBClass::eeh_handler callback is defined, it is called.
* sPAPRPHBClass::eeh_handler is only implemented for VFIO now. It does ioctl()
  to the IOMMU container fd to complete the call. Error codes from that ioctl()
  are transferred back to the guest.

Changelog
=========
v12 -> v13:
        * Rebase to Alex Graf's QEMU repository ("ppc-next" branch).
        * Drop the patch for header file (vfio.h) changes, which was merged
          to QEMU repository by commit a9fd1654 ("linux-headers: update to 3.17-rc7").
        * Retested on Emulex adapter and EEH errors are recovered successfully.
v13 -> v14:
        * Check if sPAPRPHBState instance is valid before converting it to the
          corresponding class as pointed by Alex Graf.
v14 -> v15:
	* Dropped unrelated patch making find_phb()/find_dev() public.
	* Checking RTAS parameter number before accessing RTAS parameter buffer for
          more safety.
	* Return hardware error from RTAS call "ibm,set-eeh-option" and "ibm,set-slot-reset"
          for some cases according to PAPR spec.

Gavin Shan (2):
  sPAPR: Implement EEH RTAS calls
  sPAPR: Implement sPAPRPHBClass::eeh_handler

 hw/ppc/spapr_pci.c          | 275 ++++++++++++++++++++++++++++++++++++++++++++
 hw/ppc/spapr_pci_vfio.c     |  56 +++++++++
 hw/vfio/common.c            |   1 +
 include/hw/pci-host/spapr.h |   7 ++
 include/hw/ppc/spapr.h      |  43 ++++++-
 5 files changed, 380 insertions(+), 2 deletions(-)

-- 
1.8.3.2

             reply	other threads:[~2015-01-05  0:58 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-05  0:26 Gavin Shan [this message]
2015-01-05  0:26 ` [Qemu-devel] [PATCH v15 1/2] sPAPR: Implement EEH RTAS calls Gavin Shan
2015-01-14  1:39   ` David Gibson
2015-01-15  0:14     ` Gavin Shan
2015-01-15  1:33       ` David Gibson
2015-01-15  3:21         ` Gavin Shan
2015-01-05  0:26 ` [Qemu-devel] [PATCH v15 2/2] sPAPR: Implement sPAPRPHBClass::eeh_handler Gavin Shan
2015-01-14  1:41   ` David Gibson
2015-01-15  0:25     ` Gavin Shan
2015-02-04 13:42     ` Alexander Graf
2015-02-04 13:44       ` David Gibson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1420417588-32562-1-git-send-email-gwshan@linux.vnet.ibm.com \
    --to=gwshan@linux.vnet.ibm.com \
    --cc=agraf@suse.de \
    --cc=aik@ozlabs.ru \
    --cc=alex.williamson@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).