From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Konrad Rzeszutek Wilk <konrad@kernel.org>,
Jeremy Fitzhardinge <jeremy@goop.org>,
"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>
Subject: Re: [Xen-devel] [PATCH 1/3] pci/xen: Use xen_allocate_pirq_msi
Date: Fri, 18 Feb 2011 09:07:29 -0500 [thread overview]
Message-ID: <20110218140729.GA8446@dumpdata.com> (raw)
In-Reply-To: <20110217143003.GE5987@dumpdata.com>
On Thu, Feb 17, 2011 at 09:30:03AM -0500, Konrad Rzeszutek Wilk wrote:
> On Thu, Feb 17, 2011 at 08:41:31AM +0000, Ian Campbell wrote:
> > On Wed, 2011-02-16 at 22:17 +0000, Konrad Rzeszutek Wilk wrote:
> > > There is no need to use the old interface.
> >
> > xen_allocate_pirq -> xen_map_pirq_gsi -> PHYSDEVOP_alloc_irq_vector IFF
> > xen_initial_domain() in addition to the kernel side book-keeping side of
> > things (set chip and handler, update irq_info etc) whereas
> > xen_allocate_pirq_msi just does the kernel book keeping.
> >
> > Also xen_allocate_pirq allocates an IRQ in the 1-1 GSI space whereas
> > xen_allocate_pirq_msi allocates a dynamic one in the >GSI IRQ space.
>
> Which is OK. These are MSIs.
> >
> > So this change is actually a semantic change and not just a switch to a
> > new interface. I think the change is OK (because the caller is domU
>
> Right.
>
> > only?) but a comment explaining this would be appreciated.
>
> Correct: "domU side".
>
> Will fix it up.
How does this look to you?
>From eb832bece3131ecbdb509f7f2a9bc53f6692177c Mon Sep 17 00:00:00 2001
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Date: Wed, 16 Feb 2011 13:43:04 -0500
Subject: [PATCH 3/5] pci/xen: Use xen_allocate_pirq_msi instead of xen_allocate_pirq
xen_allocate_pirq -> xen_map_pirq_gsi -> PHYSDEVOP_alloc_irq_vector IFF
xen_initial_domain() in addition to the kernel side book-keeping side of
things (set chip and handler, update irq_info etc) whereas
xen_allocate_pirq_msi just does the kernel book keeping.
Also xen_allocate_pirq allocates an IRQ in the 1-1 GSI space whereas
xen_allocate_pirq_msi allocates a dynamic one in the >GSI IRQ space.
All of this is uneccessary as this code path is only executed
when we run as a domU PV guest with an MSI/MSI-X PCI card passed in.
Hence we can jump straight to allocating an dynamic IRQ (and
binding it to the proper PIRQ) and skip the rest.
In short: this change is a cosmetic one.
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
arch/x86/pci/xen.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c
index 25cd4a0..6432f75 100644
--- a/arch/x86/pci/xen.c
+++ b/arch/x86/pci/xen.c
@@ -157,14 +157,14 @@ static int xen_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
goto error;
i = 0;
list_for_each_entry(msidesc, &dev->msi_list, list) {
- irq = xen_allocate_pirq(v[i], 0, /* not sharable */
+ xen_allocate_pirq_msi(
(type == PCI_CAP_ID_MSIX) ?
- "pcifront-msi-x" : "pcifront-msi");
+ "pcifront-msi-x" : "pcifront-msi",
+ &irq, &v[i], XEN_ALLOC_IRQ);
if (irq < 0) {
ret = -1;
goto free;
}
-
ret = set_irq_msi(irq, msidesc);
if (ret)
goto error_while;
--
1.7.1
next prev parent reply other threads:[~2011-02-18 14:07 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-16 22:17 [PATCH] Xen PCI fronted fixes for 2.6.39 Konrad Rzeszutek Wilk
2011-02-16 22:17 ` [PATCH 1/3] pci/xen: Use xen_allocate_pirq_msi Konrad Rzeszutek Wilk
2011-02-17 8:41 ` [Xen-devel] " Ian Campbell
2011-02-17 8:41 ` Ian Campbell
2011-02-17 14:30 ` [Xen-devel] " Konrad Rzeszutek Wilk
2011-02-18 14:07 ` Konrad Rzeszutek Wilk [this message]
2011-02-18 14:11 ` Ian Campbell
2011-02-18 14:13 ` Stefano Stabellini
2011-02-18 14:13 ` Stefano Stabellini
2011-02-17 14:52 ` [Xen-devel] " Konrad Rzeszutek Wilk
2011-02-18 16:43 ` [PATCH 0/12] xen: MSI managment cleanups (Was: Re: [PATCH 1/3] pci/xen: Use xen_allocate_pirq_msi) Ian Campbell
2011-02-18 16:43 ` [PATCH 01/12] xen: pci: only define xen_initdom_setup_msi_irqs if CONFIG_XEN_DOM0 Ian Campbell
2011-02-18 16:43 ` [PATCH 02/12] xen: events: do not leak IRQ from xen_allocate_pirq_msi when no pirq available Ian Campbell
2011-02-21 12:50 ` Stefano Stabellini
2011-02-21 13:40 ` Ian Campbell
2011-02-18 16:43 ` [PATCH 03/12] xen: events: drop XEN_ALLOC_IRQ flag to xen_allocate_pirq_msi Ian Campbell
2011-02-18 16:43 ` [PATCH 04/12] xen: events: return irq from xen_allocate_pirq_msi Ian Campbell
2011-02-18 16:43 ` [PATCH 05/12] xen: pci: collapse apic_register_gsi_xen_hvm and xen_hvm_register_pirq Ian Campbell
2011-02-18 16:43 ` [PATCH 06/12] xen: events: assume PHYSDEVOP_get_free_pirq exists Ian Campbell
2011-02-18 16:43 ` [PATCH 07/12] xen: events: separate MSI PIRQ allocation from PIRQ binding to IRQ Ian Campbell
2011-02-21 12:50 ` Stefano Stabellini
2011-02-21 13:39 ` Ian Campbell
2011-02-18 16:43 ` [PATCH 08/12] xen: events: refactor xen_create_msi_irq slightly Ian Campbell
2011-02-18 16:43 ` [PATCH 09/12] xen: events: update pirq_to_irq in xen_create_msi_irq Ian Campbell
2011-02-22 20:35 ` Konrad Rzeszutek Wilk
2011-02-23 13:20 ` Ian Campbell
2011-02-23 15:08 ` Konrad Rzeszutek Wilk
2011-02-23 15:57 ` Ian Campbell
2011-02-18 16:43 ` [PATCH 10/12] xen: events: push set_irq_msi down into xen_create_msi_irq Ian Campbell
2011-02-18 16:43 ` [PATCH 11/12] xen: events: use xen_bind_pirq_msi_to_irq from xen_create_msi_irq Ian Campbell
2011-02-18 16:43 ` [PATCH 12/12] xen: events: remove dom0 specific xen_create_msi_irq Ian Campbell
2011-02-18 17:00 ` Ian Campbell
2011-02-18 17:06 ` Ian Campbell
2011-02-16 22:17 ` [PATCH 2/3] xen-pcifront: Sanity check the MSI/MSI-X values Konrad Rzeszutek Wilk
2011-02-16 22:17 ` Konrad Rzeszutek Wilk
2011-02-17 8:53 ` [Xen-devel] " Ian Campbell
2011-02-18 14:08 ` Konrad Rzeszutek Wilk
2011-02-18 14:15 ` Ian Campbell
2011-02-18 14:20 ` Konrad Rzeszutek Wilk
2011-02-16 22:17 ` [PATCH 3/3] xen-pcifront: don't use flush_scheduled_work() Konrad Rzeszutek Wilk
2011-02-17 8:29 ` [Xen-devel] [PATCH] Xen PCI fronted fixes for 2.6.39 Ian Campbell
2011-02-17 14:28 ` Konrad Rzeszutek Wilk
2011-02-17 14:38 ` Ian Campbell
2011-02-17 14:38 ` Ian Campbell
2011-02-18 14:22 ` Konrad Rzeszutek Wilk
2011-02-18 14:22 ` Konrad Rzeszutek Wilk
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=20110218140729.GA8446@dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=Ian.Campbell@citrix.com \
--cc=Stefano.Stabellini@eu.citrix.com \
--cc=jeremy@goop.org \
--cc=konrad@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=xen-devel@lists.xensource.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.