From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
To: david.vrabel@citrix.com, konrad.wilk@oracle.com,
stefano.stabellini@eu.citrix.com
Cc: jun.nakajima@intel.com, linux-kernel@vger.kernel.org,
xen-devel@lists.xen.org, boris.ostrovsky@oracle.com
Subject: [PATCH v3 0/2] xen/pci: Use APIC for MSIs when APIC virtualization is supported
Date: Mon, 24 Nov 2014 18:06:16 -0500 [thread overview]
Message-ID: <1416870378-32481-1-git-send-email-boris.ostrovsky@oracle.com> (raw)
Changes in v3:
* Explicitly include asm/apic.h in arch/x86/pci/xen.c for !CONFIG_SMP.
Changes in v2:
* New version of cpuid.h file from Xen tree (with a couple of style adjustments)
* Whitespace cleanup
Currently HVM guests handle MSI interrupts using pirqs/event channels, allowing
us to not issue APIC accesses that result in somewhat expensive VMEXITs. When
hardware supports APIC virtualization we don't need to use pirqs anymore
since now guest's APIC accesses can be handled by the processor itself.
There are two patches in this series:
1. Move setting of x86_msi ops to a later point. The reason for doing so is that
we currently decide whether or not to use pirqs before kernel had a chance to
see whether it should be using x2APIC instead of plain APIC. Since hardware may
virtualize either or both of those two we can only make pirqs vs. APIC selection
after kernel has settled down on which APIC version it will use. (Note that
currently x2APIC is not used by HVM guests so technically this patch is not
necessary. However, it probably makes sense to apply it now to avoid
forgetting to do it when we enable x2APIC).
2. Set x86_msi ops to use pirqs only when APIC virtualization is not available.
The commit message describes performance improvements that this change brings.
Boris Ostrovsky (2):
xen/pci: Defer initialization of MSI ops on HVM guests until after
x2APIC has been set up
xen/pci: Use APIC directly when APIC virtualization is supported by
hardware
arch/x86/include/asm/xen/cpuid.h | 91 ++++++++++++++++++++++++++++++++++++++++
arch/x86/pci/xen.c | 25 ++++++++++-
2 files changed, 114 insertions(+), 2 deletions(-)
create mode 100644 arch/x86/include/asm/xen/cpuid.h
--
1.9.3
next reply other threads:[~2014-11-25 3:00 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-24 23:06 Boris Ostrovsky [this message]
2014-11-24 23:06 ` [PATCH v3 1/2] xen/pci: Defer initialization of MSI ops on HVM guests until after x2APIC has been set up Boris Ostrovsky
2014-11-25 12:06 ` Stefano Stabellini
2014-11-25 15:11 ` Boris Ostrovsky
2014-11-25 15:12 ` Stefano Stabellini
2014-11-24 23:06 ` [PATCH v3 2/2] xen/pci: Use APIC directly when APIC virtualization is supported by hardware Boris Ostrovsky
2014-11-25 12:05 ` Stefano Stabellini
2014-11-25 16:17 ` [PATCH v3 0/2] xen/pci: Use APIC for MSIs when APIC virtualization is supported 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=1416870378-32481-1-git-send-email-boris.ostrovsky@oracle.com \
--to=boris.ostrovsky@oracle.com \
--cc=david.vrabel@citrix.com \
--cc=jun.nakajima@intel.com \
--cc=konrad.wilk@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xen.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
all inboxes | Powered by JetHome®