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.
Alexey Kardashevskiy (1):
spapr_pci: Make find_phb()/find_dev() public
Gavin Shan (2):
sPAPR: Implement EEH RTAS calls
HERE ***
Gavin Shan (2):
VFIO: Drop vfio_container_do_ioctl()
VFIO: Clear stale interrupt vectors during reset
hw/misc/vfio.c | 99 +-
1 file changed, 70 insertions(+), 29 deletions(-)
--
1.8.3.2
) vectors. Otherwise, we
will potentially lose chance to restore MSI or MSIx vectors when
reenabling MSI or MSIx interrupts after reset.
The patch clears stale MSI or MSIx vectors before machine/EEH
reset so that MSI or MSIx vectors could be restored properly
after EEH PE reset.
Signed-off-by: Gavin
The patch drops vfio_container_do_ioctl() and merges its logic to
parent function call vfio_container_ioctl() so that the subsequent
patches can reused the found VFIO group in vfio_container_ioctl().
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 33
On Mon, Sep 08, 2014 at 02:52:38PM +1000, Gavin Shan wrote:
The 2 patches fix MSIx lost after PE reset. Otherwise, the MSIx
entries can't be restored successfully after PE reset and the
EEH recovery fails on broadcom tg3 adapter (as tested) in guest.
The reset path (restarting machine) has
On Tue, Sep 02, 2014 at 02:10:42PM -0600, Alex Williamson wrote:
On Mon, 2014-09-01 at 10:53 +1000, Gavin Shan wrote:
The PCI device MSIx table is cleaned out in hardware after EEH PE
reset. However, we still hold the stale MSIx entries in QEMU, which
should be cleared accordingly. Otherwise
The patch drops vfio_container_do_ioctl() and merges its logic to
parent function call vfio_container_ioctl() so that the subsequent
patches can reused the found VFIO group in vfio_container_ioctl().
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 33
ppc-next branch + the
patchset supporting EEH for guest, which can be checked out
from below link:
g...@github.com:gwshan/qemu.git (branch: eeh)
Gavin Shan (2):
VFIO: Drop vfio_container_do_ioctl()
VFIO: Clear stale MSIx table during EEH reset
hw/misc/vfio.c | 65
.
The patch clears stale MSIx table before EEH PE reset so that MSIx
table could be restored properly after EEH PE reset.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 32 +++-
1 file changed, 31 insertions(+), 1 deletion(-)
diff --git a/hw
On Tue, Aug 26, 2014 at 02:25:47PM -0600, Alex Williamson wrote:
On Wed, 2014-08-20 at 19:52 +1000, Gavin Shan wrote:
The PCI device MSIx table is cleaned out in hardware after EEH PE
reset. However, we still hold the stale MSIx entries in QEMU, which
should be cleared accordingly. Otherwise
On Wed, Aug 20, 2014 at 07:52:06PM +1000, Gavin Shan wrote:
The 2 patches fix MSIx lost after PE reset. Otherwise, the MSIx
entries can't be restored successfully after PE reset and the
EEH recovery fails on broadcom tg3 adapter (as tested) in guest.
Note: The patchset EEH support for guest isn't
The patch drops vfio_container_do_ioctl() and merges its logic to
parent function call vfio_container_ioctl() so that the subsequent
patches can reused the found VFIO group in vfio_container_ioctl().
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 33
.
The patch clears stale MSIx table before EEH PE reset so that MSIx
table could be restored properly after EEH PE reset.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 24
1 file changed, 24 insertions(+)
diff --git a/hw/misc/vfio.c b/hw/misc
ppc-next branch + the
patchset supporting EEH for guest, which can be checked out
from below link:
g...@github.com:gwshan/qemu.git (branch: eeh)
Gavin Shan (2):
VFIO: Drop vfio_container_do_ioctl()
VFIO: Clear stale MSIx table during EEH reset
hw/misc/vfio.c | 57
the call. Error
codes from that ioctl() are transferred back to the guest.
[aik: defined RTAS tokens for EEH RTAS calls]
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci.c | 246
include/hw/pci-host/spapr.h | 7
find_phb()/find_dev() public
Gavin Shan (3):
sPAPR: Implement EEH RTAS calls
headers: Update kernel header
sPAPR: Implement sPAPRPHBClass::eeh_handler
hw/misc/vfio.c | 1 +
hw/ppc/spapr_pci.c | 268 ++--
hw/ppc/spapr_pci_vfio.c
From: Alexey Kardashevskiy a...@ozlabs.ru
This makes find_phb()/find_dev() public and changed its names
to spapr_pci_find_phb()/spapr_pci_find_dev() as they are going to
be used from other parts of QEMU such as VFIO DDW (dynamic DMA window)
or VFIO PCI error injection or VFIO EEH handling - in
This updates kernel header (vfio.h) for EEH support on VFIO PCI
devices.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
linux-headers/linux/vfio.h | 34 ++
1 file changed, 34 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux
The patch implements sPAPRPHBClass::eeh_handler so that the
EEH RTAS requests can be routed to VFIO for further handling.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 1 +
hw/ppc/spapr_pci_vfio.c | 56 +
2
On Wed, Jul 16, 2014 at 11:06:21AM +1000, Alexey Kardashevskiy wrote:
On 07/16/2014 10:20 AM, Gavin Shan wrote:
The emulation for EEH RTAS requests from guest isn't covered
by QEMU yet and the patch implements them.
The patch defines constants used by EEH RTAS calls and adds
callback
On Wed, Jul 16, 2014 at 11:09:44AM +1000, Alexey Kardashevskiy wrote:
On 07/16/2014 10:20 AM, Gavin Shan wrote:
This updates kernel header (vfio.h) for EEH support on VFIO PCI
devices.
Has this reached kernel upstream? The way linux headers update normally
happens is you have to run scripts
On Wed, Jul 16, 2014 at 11:32:13AM +1000, Alexey Kardashevskiy wrote:
On 07/16/2014 11:16 AM, Gavin Shan wrote:
On Wed, Jul 16, 2014 at 11:09:44AM +1000, Alexey Kardashevskiy wrote:
On 07/16/2014 10:20 AM, Gavin Shan wrote:
This updates kernel header (vfio.h) for EEH support on VFIO PCI
The permission of TCE entry should exclude physical base address.
Otherwise, unmapping TCE entry can be interpreted to mapping TCE
entry wrongly for VFIO devices.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 2 +-
hw/ppc/spapr_iommu.c | 4 ++--
2 files changed
On Thu, Jun 26, 2014 at 12:46:50PM +0200, Alexander Graf wrote:
On 26.06.14 12:43, Gavin Shan wrote:
On Thu, Jun 26, 2014 at 12:30:16PM +0200, Alexander Graf wrote:
On 26.06.14 03:35, Gavin Shan wrote:
The emulation for EEH RTAS requests from guest isn't covered
by QEMU yet and the patch
On Thu, Jun 26, 2014 at 12:30:16PM +0200, Alexander Graf wrote:
On 26.06.14 03:35, Gavin Shan wrote:
The emulation for EEH RTAS requests from guest isn't covered
by QEMU yet and the patch implements them.
The patch defines constants used by EEH RTAS calls and adds
callback sPAPRPHBClass
The patch implements sPAPRPHBClass::eeh_handler so that the
EEH RTAS requests can be routed to VFIO for further handling.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci_vfio.c | 56 +
1 file changed, 56 insertions(+)
diff
(...).
Gavin Shan (3):
sPAPR: Implement EEH RTAS calls
headers: Update kernel header
sPAPR: Implement sPAPRPHBClass::eeh_handler
hw/ppc/spapr_pci.c | 240
hw/ppc/spapr_pci_vfio.c | 56 +++
include/hw/pci-host/spapr.h | 7
This updates kernel header (vfio.h) for EEH support on VFIO PCI
devices.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
linux-headers/linux/vfio.h | 34 ++
1 file changed, 34 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux
. Error
codes from that ioctl() are transferred back to the guest.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci.c | 240
include/hw/pci-host/spapr.h | 7 ++
include/hw/ppc/spapr.h | 33 ++
3 files changed
On Tue, Jun 24, 2014 at 04:43:23PM +0200, Alexander Graf wrote:
On 10.06.14 04:03, Gavin Shan wrote:
The emulation for EEH RTAS requests from guest isn't covered
by QEMU yet and the patch implements them.
The patch defines constants used by EEH RTAS calls and adds
callback sPAPRPHBClass
On Mon, Jun 23, 2014 at 11:13:45PM +0200, Alexander Graf wrote:
Am 23.06.2014 um 23:03 schrieb Benjamin Herrenschmidt
b...@kernel.crashing.org:
On Mon, 2014-06-23 at 18:18 +0200, Alexander Graf wrote:
Device emulation code shouldn't even remotely have an idea what host
it's running on.
On Mon, Jun 23, 2014 at 06:18:37PM +0200, Alexander Graf wrote:
On 23.06.14 04:22, Gavin Shan wrote:
The patch implements PCI error injection RTAS calls for sPAPR
platform, which are defined PAPR spec as follows. Those RTAS
calls are expected to be invoked in strict sequence of
ibm,open-errinjct
The patch exports RTAS property ibm,errinjct-tokens, which is
defined in PAPR spec and used to indicate various error types
we can inject.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr.c | 19 +++
1 file changed, 19 insertions(+)
diff --git a/hw/ppc
corresponding kernel changes as follows. Please comments, thanks!
http://patchwork.ozlabs.org/patch/362637/
http://patchwork.ozlabs.org/patch/362638/
http://patchwork.ozlabs.org/patch/362639/
Gavin Shan (3):
sPAPR: Implement PCI error injection RTAS calls
sPAPR: Implement sPAPRPHBClass
The patch implements sPAPRPHBClass::format_errinjct_cmd to do the
address translation (BUID+PE number to IOMMU group ID) and then
come up with the formatted string for PCI error injection.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci_vfio.c | 19 +++
1
/sys/firmware/opal/errinjct to do error injection.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_rtas.c | 198
include/hw/pci-host/spapr.h | 11 +++
include/hw/ppc/spapr.h | 35
3 files changed, 244
On Wed, Jun 11, 2014 at 07:37:48PM -0600, Alex Williamson wrote:
On Thu, 2014-06-12 at 10:02 +1000, Gavin Shan wrote:
On Wed, Jun 11, 2014 at 02:26:51PM -0600, Alex Williamson wrote:
On Tue, 2014-06-10 at 12:03 +1000, Gavin Shan wrote:
The patch implements sPAPRPHBClass::eeh_handler so
On Wed, Jun 11, 2014 at 02:26:51PM -0600, Alex Williamson wrote:
On Tue, 2014-06-10 at 12:03 +1000, Gavin Shan wrote:
The patch implements sPAPRPHBClass::eeh_handler so that the
EEH RTAS requests can be routed to VFIO for further handling.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
Gavin Shan (3):
sPAPR: Implement EEH RTAS calls
headers: Update kernel header
sPAPR: Implement sPAPRPHBClass::eeh_handler
hw/ppc/spapr_pci.c | 248
hw/ppc/spapr_pci_vfio.c | 56 ++
include/hw/pci-host/spapr.h | 7
. Error
codes from that ioctl() are transferred back to the guest.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci.c | 248
include/hw/pci-host/spapr.h | 7 ++
include/hw/ppc/spapr.h | 33 ++
3 files changed
This updates kernel header (vfio.h) for EEH support on VFIO PCI
devices.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
linux-headers/linux/vfio.h | 34 ++
1 file changed, 34 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux
The patch implements sPAPRPHBClass::eeh_handler so that the
EEH RTAS requests can be routed to VFIO for further handling.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci_vfio.c | 56 +
1 file changed, 56 insertions(+)
diff
The patch introduces helper function vfio_pci_container_ioctl() to
pass ioctl commands to the specified VFIO container that is identified
by IOMMU group id. On sPAPR platform, each container only has one
IOMMU group.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c
The patch implements sPAPRPHBClass::eeh_handler so that the
EEH RTAS requests can be routed to VFIO for further handling.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci_vfio.c | 54 +
1 file changed, 54 insertions(+)
diff
This updates kernel header (vfio.h) for EEH support on VFIO PCI
devices.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
linux-headers/linux/vfio.h | 35 +++
1 file changed, 35 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux
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.
Gavin Shan (4):
sPAPR
address) as a target
address except ibm,get-config-addr-info2 and one case (enable EEH on the
specified PCI function) for ibm,set-eeh-option.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci.c | 248
include/hw/pci-host
On Thu, Jun 05, 2014 at 02:09:14PM +0200, Alexander Graf wrote:
On 05.06.14 08:53, Gavin Shan wrote:
The emulation for EEH RTAS requests from guest isn't covered
by QEMU yet and the patch implements them.
The patch defines constants used by EEH RTAS calls and adds
callback sPAPRPHBClass
On Thu, Jun 05, 2014 at 02:11:21PM +0200, Alexander Graf wrote:
On 05.06.14 08:53, Gavin Shan wrote:
The patch introduces helper function vfio_pci_container_ioctl() to
pass ioctl commands to the specified VFIO container that is identified
by IOMMU group id. On sPAPR platform, each container only
On Thu, Jun 05, 2014 at 12:27:23PM -0600, Alex Williamson wrote:
On Thu, 2014-06-05 at 16:53 +1000, Gavin Shan wrote:
The patch introduces helper function vfio_pci_container_ioctl() to
pass ioctl commands to the specified VFIO container that is identified
by IOMMU group id. On sPAPR platform
On Fri, Jun 06, 2014 at 09:40:56AM +1000, Alexey Kardashevskiy wrote:
On 06/06/2014 05:27 AM, Alex Williamson wrote:
On Thu, 2014-06-05 at 15:49 +1000, Alexey Kardashevskiy wrote:
To perform DMA mapping via TCE table correctly, the guest must
know where DMA window is located on the PCI bus. A
- v9:
* Update kernel header (vfio.h) according to changes applied to kerenl.
* Rename rtas_finish_eeh_request() to rtas_handle_eeh_request().
* vfio_pci_container_ioctl() moved to Alexey's VFIO patchset.
Gavin Shan (3):
sPAPR: Implement EEH RTAS calls
headers: Update
The patch implements sPAPRPHBClass::eeh_handler so that the
EEH RTAS requests can be routed to VFIO for further handling.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci_vfio.c | 56 +
1 file changed, 56 insertions(+)
diff
This updates kernel header (vfio.h) for EEH support on VFIO PCI
devices.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
linux-headers/linux/vfio.h | 34 ++
1 file changed, 34 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux
. Error
codes from that ioctl() are transferred back to the guest.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/ppc/spapr_pci.c | 248
include/hw/pci-host/spapr.h | 7 ++
include/hw/ppc/spapr.h | 33 ++
3 files changed
On Wed, May 28, 2014 at 01:24:15PM +0200, Alexander Graf wrote:
On 28.05.14 06:12, Gavin Shan wrote:
On Wed, May 28, 2014 at 12:41:37AM +0200, Alexander Graf wrote:
On 28.05.14 00:27, Benjamin Herrenschmidt wrote:
On Wed, 2014-05-28 at 00:22 +0200, Alexander Graf wrote:
.../...
In any case
:
* All ioctl commands go to VFIO container fd instead of PCI device fd.
* QEMU figures out the PE address directly.
* Rely on sPAPRVFIOPHBState, which is one-to-one mapping with IOMMU
group.
Gavin Shan (3):
headers: Sync with Linux header
VFIO: Helper function to retrieve
address is equal to IOMMU
group ID. It can be used to distinguish sPAPRVFIOPHBState from
sPAPRPHBState.
As we're going to support EEH functonality for VFIO PCI devices,
we simply return error if the EEH RTAS call is routed to non-VFIO
PHB whose PE address is 0x.
Signed-off-by: Gavin Shan
The patch synchronizes with linux header (vfio.h).
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
linux-headers/linux/vfio.h | 66 ++
1 file changed, 66 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h
index
The patch adds function vfio_get_container_fd_by_group_id() to retrieve
the container's fd of the specified VFIO group. The fd will be used
by subsequent patches.
Signed-off-by: Gavin Shan gws...@linux.vnet.ibm.com
---
hw/misc/vfio.c | 17 +
include/hw/misc/vfio.h | 1
On Tue, May 27, 2014 at 08:16:47AM -0600, Alex Williamson wrote:
On Tue, 2014-05-27 at 18:51 +1000, Gavin Shan wrote:
The patch adds function vfio_get_container_fd_by_group_id() to retrieve
the container's fd of the specified VFIO group. The fd will be used
by subsequent patches.
Signed-off
On Tue, May 27, 2014 at 08:16:47AM -0600, Alex Williamson wrote:
On Tue, 2014-05-27 at 18:51 +1000, Gavin Shan wrote:
The patch adds function vfio_get_container_fd_by_group_id() to retrieve
the container's fd of the specified VFIO group. The fd will be used
by subsequent patches.
Signed-off
On Wed, May 28, 2014 at 12:41:37AM +0200, Alexander Graf wrote:
On 28.05.14 00:27, Benjamin Herrenschmidt wrote:
On Wed, 2014-05-28 at 00:22 +0200, Alexander Graf wrote:
.../...
In any case, the above isn't the problem, we register rtas functions
called rtas_ibm_*, that's fine.
They're called
What you are looking for is the parent property which gets set up by
[...adding a child property to some object. Many devices are not yet
wired up as such...]
You mean that current device object should have one parent property?
Its parent device should have one child property pointing to
901 - 964 of 964 matches
Mail list logo