Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933195AbaLBUsj (ORCPT ); Tue, 2 Dec 2014 15:48:39 -0500 Received: from aserp1040.oracle.com ([141.146.126.69]:40508 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933169AbaLBUsh (ORCPT ); Tue, 2 Dec 2014 15:48:37 -0500 Date: Tue, 2 Dec 2014 15:48:25 -0500 From: Konrad Rzeszutek Wilk To: Boris Ostrovsky Cc: david.vrabel@citrix.com, stefano.stabellini@eu.citrix.com, jun.nakajima@intel.com, linux-kernel@vger.kernel.org, xen-devel@lists.xen.org Subject: Re: [PATCH v4 0/2] xen/pci: Use APIC for MSIs when APIC virtualization is supported Message-ID: <20141202204825.GS357@laptop.dumpdata.com> References: <1417551553-22234-1-git-send-email-boris.ostrovsky@oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1417551553-22234-1-git-send-email-boris.ostrovsky@oracle.com> User-Agent: Mutt/1.5.23 (2014-03-12) X-Source-IP: ucsinet22.oracle.com [156.151.31.94] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Dec 02, 2014 at 03:19:11PM -0500, Boris Ostrovsky wrote: > Changes in v4: > * Added comment describing what we check for in pci_xen_init() > Reviewed-by: Konrad Rzeszutek Wilk > 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 | 31 +++++++++++++- > 2 files changed, 120 insertions(+), 2 deletions(-) > create mode 100644 arch/x86/include/asm/xen/cpuid.h > > -- > 1.8.1.4 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/