From: Cornelia Huck <cohuck@redhat.com>
To: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
Cc: "qemu-devel@nongnu.org Developers" <qemu-devel@nongnu.org>,
Thomas Huth <thuth@redhat.com>,
zyimin@linux.vnet.ibm.com, pmorel@linux.vnet.ibm.com,
Alexander Graf <agraf@suse.de>,
Christian Borntraeger <borntraeger@de.ibm.com>
Subject: Re: [Qemu-devel] [PATCH RFC v2 8/9] s390x/kvm: msi route fixup for non-pci
Date: Tue, 18 Jul 2017 17:22:44 +0200 [thread overview]
Message-ID: <20170718172244.75fa5d73@gondolin> (raw)
In-Reply-To: <CAAdtpL4TGurYS3tO1RbbJ78HrMRg+AyUmFf_+WhfkTdXLp0cOA@mail.gmail.com>
On Tue, 18 Jul 2017 11:58:08 -0300
Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
> Hi Cornelia,
>
> On Tue, Jul 18, 2017 at 11:24 AM, Cornelia Huck <cohuck@redhat.com> wrote:
> > If we don't provide pci, we cannot have a pci device for which we
> > have to translate to adapter routes: just return -ENODEV.
> >
> > Signed-off-by: Cornelia Huck <cohuck@redhat.com>
> > ---
> > target/s390x/kvm.c | 33 +++++++++++++++++++--------------
> > 1 file changed, 19 insertions(+), 14 deletions(-)
> >
> > diff --git a/target/s390x/kvm.c b/target/s390x/kvm.c
> > index 60688888c3..df0e5af151 100644
> > --- a/target/s390x/kvm.c
> > +++ b/target/s390x/kvm.c
> > @@ -2424,22 +2424,27 @@ int kvm_arch_fixup_msi_route(struct kvm_irq_routing_entry *route,
> > uint32_t idx = data >> ZPCI_MSI_VEC_BITS;
> > uint32_t vec = data & ZPCI_MSI_VEC_MASK;
> >
> > - pbdev = s390_pci_find_dev_by_idx(s390_get_phb(), idx);
> > - if (!pbdev) {
> > - DPRINTF("add_msi_route no dev\n");
> > - return -ENODEV;
> > - }
> > + if (s390_has_feat(S390_FEAT_ZPCI)) {
> > + pbdev = s390_pci_find_dev_by_idx(s390_get_phb(), idx);
> > + if (!pbdev) {
> > + DPRINTF("add_msi_route no dev\n");
> > + return -ENODEV;
> > + }
> >
> > - pbdev->routes.adapter.ind_offset = vec;
> > + pbdev->routes.adapter.ind_offset = vec;
> >
> > - route->type = KVM_IRQ_ROUTING_S390_ADAPTER;
> > - route->flags = 0;
> > - route->u.adapter.summary_addr = pbdev->routes.adapter.summary_addr;
> > - route->u.adapter.ind_addr = pbdev->routes.adapter.ind_addr;
> > - route->u.adapter.summary_offset = pbdev->routes.adapter.summary_offset;
> > - route->u.adapter.ind_offset = pbdev->routes.adapter.ind_offset;
> > - route->u.adapter.adapter_id = pbdev->routes.adapter.adapter_id;
> > - return 0;
> > + route->type = KVM_IRQ_ROUTING_S390_ADAPTER;
> > + route->flags = 0;
> > + route->u.adapter.summary_addr = pbdev->routes.adapter.summary_addr;
> > + route->u.adapter.ind_addr = pbdev->routes.adapter.ind_addr;
> > + route->u.adapter.summary_offset = pbdev->routes.adapter.summary_offset;
> > + route->u.adapter.ind_offset = pbdev->routes.adapter.ind_offset;
> > + route->u.adapter.adapter_id = pbdev->routes.adapter.adapter_id;
> > + return 0;
> > + } else {
> > + DPRINTF("fixup_msi_route on non-pci machine?!\n");
> > + return -ENODEV;
> > + }
> > }
> >
> > int kvm_arch_add_msi_route_post(struct kvm_irq_routing_entry *route,
> > --
> > 2.13.3
>
> What about inverting the check?
>
> + if (!s390_has_feat(S390_FEAT_ZPCI)) {
> + DPRINTF("fixup_msi_route on non-pci machine?!\n");
> + return -ENODEV;
> + }
I usually prefer the more common branch on top, but (1) this causes
more changes in this case and (2) I'm not so sure if zpci on really is
the common case...
next prev parent reply other threads:[~2017-07-18 15:22 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-18 14:24 [Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 1/9] kvm: remove hard dependency on pci Cornelia Huck
2017-07-18 15:00 ` Thomas Huth
2017-07-18 15:20 ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 2/9] s390x/pci: add stubs Cornelia Huck
2017-07-19 7:42 ` Thomas Huth
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 3/9] s390x: chsc nt2 events are pci-only Cornelia Huck
2017-07-19 7:57 ` Thomas Huth
2017-07-19 8:05 ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 4/9] s390x/pci: do not advertise pci on non-pci builds Cornelia Huck
2017-07-18 19:56 ` Christian Borntraeger
2017-07-19 8:00 ` Cornelia Huck
2017-07-19 8:56 ` Yi Min Zhao
2017-07-19 9:24 ` Cornelia Huck
2017-07-19 9:27 ` Yi Min Zhao
2017-07-19 9:38 ` Yi Min Zhao
2017-07-19 11:41 ` Thomas Huth
2017-07-19 12:18 ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 5/9] s390x/ccw: create s390 phb conditionally Cornelia Huck
2017-07-19 8:00 ` Thomas Huth
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 6/9] s390x/sclp: properly guard pci-specific functions Cornelia Huck
2017-07-19 8:03 ` Thomas Huth
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 7/9] s390x/pci: fence off instructions for non-pci Cornelia Huck
2017-07-19 3:21 ` Yi Min Zhao
2017-07-19 7:38 ` Cornelia Huck
2017-07-19 8:07 ` Thomas Huth
2017-07-19 8:49 ` Cornelia Huck
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 8/9] s390x/kvm: msi route fixup " Cornelia Huck
2017-07-18 14:58 ` Philippe Mathieu-Daudé
2017-07-18 15:22 ` Cornelia Huck [this message]
2017-07-19 3:16 ` Yi Min Zhao
2017-07-19 7:09 ` Thomas Huth
2017-07-19 7:30 ` Cornelia Huck
2017-07-19 3:13 ` Yi Min Zhao
2017-07-18 14:24 ` [Qemu-devel] [PATCH RFC v2 9/9] s390x: refine pci dependencies Cornelia Huck
2017-07-18 14:51 ` Thomas Huth
2017-07-18 19:18 ` [Qemu-devel] [PATCH RFC v2 0/9] s390x: zPCI detangling no-reply
2017-07-19 7:54 ` Cornelia Huck
2017-07-19 13:03 ` Cornelia Huck
2017-07-19 13:31 ` Thomas Huth
2017-07-24 10:44 ` Christian Borntraeger
2017-08-07 15:46 ` 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=20170718172244.75fa5d73@gondolin \
--to=cohuck@redhat.com \
--cc=agraf@suse.de \
--cc=borntraeger@de.ibm.com \
--cc=f4bug@amsat.org \
--cc=pmorel@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
--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).