qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Cornelia Huck <cornelia.huck@de.ibm.com>
To: qemu-devel@nongnu.org
Cc: mst@redhat.com, marcel@redhat.com, borntraeger@de.ibm.com,
	agraf@suse.de, jfrei@linux.vnet.ibm.com,
	zyimin@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH 00/17] s390x: the big pci update
Date: Fri, 1 Jul 2016 14:59:46 +0200	[thread overview]
Message-ID: <20160701145946.1f412220.cornelia.huck@de.ibm.com> (raw)
In-Reply-To: <20160624132906.14446-1-cornelia.huck@de.ibm.com>

On Fri, 24 Jun 2016 15:28:49 +0200
Cornelia Huck <cornelia.huck@de.ibm.com> wrote:

> We had been looking at remodelling the pci representation for s390x
> to handle our slightly odd architecture correctly some time ago
> already, but now we have a patchset that we're happy with.
> 
> There's a bunch of bugfixes, cleanups and architecture conformance
> changes in there, but the most interesting part is the modelling
> (which, in some respects, takes a cue from what sPAPR does).
> 
> We introduce a 'zpci' device to hold s390x-specific properties like
> the uid and fid. This 'zpci' device is connected to a run-of-the-mill
> pci device via the 'target' property.
> 
> Example command line portion:
> 
> -device zpci,uid=1,fid=1,target=vpci0 \
> -device vfio-pci,host=0000:00:00.0,id=vpci0 \
> -device zpci,target=vpci1 \
> -device vfio-pci,host=0001:00:00.0,id=vpci1 \
> -device vfio-pci,host=0002:00:00.0,id=vpci2
> 
> For device vpci0, uid and fid are specified in the associated zpci
> device.
> For device vpci1, uid and fid are automatically generated.
> For device vpci2, first an associated zpci device is generated and
> then autogenerated values for uid and fid are placed in it.
> 
> This should accomodate both specifying our special parameters and
> re-using standard statements for pci devices. You can still specify
> bus/slot/function for the pci device, but it will not be propagated
> into the guest (as the s390 pci architecture does not allow for it;
> the guest only sees uid/fid).
> 
> The "introduce S390PCI<foo>" patches are probably the most interesting
> for those looking at the modelling.
> 
> I'd love to see some feedback from a PCI perspective, as I'm happy
> from the s390x perspective (and I'd like to see this in 2.7).
> 
> Branch available at git://github.com/cohuck/qemu s390x-pci-update
> 
> Yi Min Zhao (17):
>   s390x/pci: fix failures of dma map/unmap
>   s390x/pci: acceleration for getting S390pciState
>   s390x/pci: write fid in CLP_QUERY_PCI_FN
>   s390x/pci: unify FH_ macros
>   s390x/pci: refactor s390_pci_find_dev_by_fh
>   s390x/pci: enforce zPCI state checking
>   s390x/pci: introduce S390PCIBus
>   s390x/pci: introduce S390PCIIOMMU
>   s390x/pci: introduce S390PCIBusDevice qdev
>   s390x/pci: enable uid-checking
>   s390x/pci: enable zpci hot-plug/hot-unplug
>   s390x/pci: add checkings in CLP_SET_PCI_FN
>   s390x/pci: refactor s390_pci_find_dev_by_idx
>   s390x/pci: refactor list_pci
>   s390x/pci: fix stpcifc_service_call
>   s390x/pci: replace fid with idx in msg data of msix
>   s390x/pci: make hot-unplug handler smoother
> 
>  hw/s390x/s390-pci-bus.c  | 579 +++++++++++++++++++++++++++++++++++------------
>  hw/s390x/s390-pci-bus.h  |  77 ++++++-
>  hw/s390x/s390-pci-inst.c | 266 ++++++++++++++++------
>  hw/s390x/s390-pci-inst.h |   7 +-
>  include/hw/s390x/sclp.h  |   1 +
>  target-s390x/kvm.c       |   4 +-
>  6 files changed, 718 insertions(+), 216 deletions(-)
> 

FWIW: I plan to include this in the next s390x pullreq for 2.7, unless
someone objects.

  parent reply	other threads:[~2016-07-01 13:00 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-24 13:28 [Qemu-devel] [PATCH 00/17] s390x: the big pci update Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 01/17] s390x/pci: fix failures of dma map/unmap Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 02/17] s390x/pci: acceleration for getting S390pciState Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 03/17] s390x/pci: write fid in CLP_QUERY_PCI_FN Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 04/17] s390x/pci: unify FH_ macros Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 05/17] s390x/pci: refactor s390_pci_find_dev_by_fh Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 06/17] s390x/pci: enforce zPCI state checking Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 07/17] s390x/pci: introduce S390PCIBus Cornelia Huck
2016-06-28 14:39   ` Marcel Apfelbaum
2016-06-28 15:20     ` Cornelia Huck
2016-06-28 15:40       ` Marcel Apfelbaum
2016-06-28 17:15         ` Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 08/17] s390x/pci: introduce S390PCIIOMMU Cornelia Huck
2016-06-24 13:28 ` [Qemu-devel] [PATCH 09/17] s390x/pci: introduce S390PCIBusDevice qdev Cornelia Huck
2016-06-28 14:49   ` Marcel Apfelbaum
2016-06-28 15:21     ` Cornelia Huck
2016-06-28 15:43       ` Marcel Apfelbaum
2016-06-24 13:28 ` [Qemu-devel] [PATCH 10/17] s390x/pci: enable uid-checking Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 11/17] s390x/pci: enable zpci hot-plug/hot-unplug Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 12/17] s390x/pci: add checkings in CLP_SET_PCI_FN Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 13/17] s390x/pci: refactor s390_pci_find_dev_by_idx Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 14/17] s390x/pci: refactor list_pci Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 15/17] s390x/pci: fix stpcifc_service_call Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 16/17] s390x/pci: replace fid with idx in msg data of msix Cornelia Huck
2016-06-24 13:29 ` [Qemu-devel] [PATCH 17/17] s390x/pci: make hot-unplug handler smoother Cornelia Huck
2016-06-28 14:33 ` [Qemu-devel] [PATCH 00/17] s390x: the big pci update Marcel Apfelbaum
2016-06-28 15:02   ` Cornelia Huck
2016-06-28 16:35     ` Marcel Apfelbaum
2016-07-01 12:59 ` Cornelia Huck [this message]
2016-07-05 13:51 ` Cornelia Huck

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=20160701145946.1f412220.cornelia.huck@de.ibm.com \
    --to=cornelia.huck@de.ibm.com \
    --cc=agraf@suse.de \
    --cc=borntraeger@de.ibm.com \
    --cc=jfrei@linux.vnet.ibm.com \
    --cc=marcel@redhat.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=zyimin@linux.vnet.ibm.com \
    /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).