From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gordan Bobic Subject: Re: [PATCH] fix XSA-46 regression with xend/xm Date: Fri, 24 May 2013 12:41:28 +0100 Message-ID: References: "\"<519B4F1102000078000D789D@nat28.tlf.novell.com>" <1369126587.21246.32.camel@zakaz.uk.xensource.com>" <519D2FBB.7000309@bobich.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: George Dunlap Cc: Steven Haigh , Ian Campbell , Ian Jackson , Andreas Falck , xen-devel , Stefano Stabellini , Jan Beulich List-Id: xen-devel@lists.xenproject.org On Fri, 24 May 2013 12:19:32 +0100, George Dunlap wrote: > On Wed, May 22, 2013 at 9:51 PM, Gordan Bobic > wrote: >> On 05/21/2013 09:56 AM, Ian Campbell wrote: >>> >>> On Tue, 2013-05-21 at 09:40 +0100, Jan Beulich wrote: >>>> >>>> The hypervisor side changes for XSA-46 require the tool stack to >>>> now >>>> always map the guest pIRQ before granting access permission to the >>>> underlying host IRQ (GSI). This in particular requires that >>>> pciif.py >>>> no longer can skip this step (assuming qemu would do it) for HVM >>>> guests. >>>> >>>> This in turn exposes, however, an inconsistency between xend and >>>> qemu: >>>> The former wants to always establish 1:1 mappings between pIRQ and >>>> host >>>> IRQ (for non-MSI only of course), while the latter always wants to >>>> allocate an arbitrary mapping. Since the whole tool stack >>>> obviously >>>> should always agree on the mapping model, make libxc enforce the >>>> 1:1 >>>> mapping as the more natural one (as well as being the one that >>>> allows >>>> for easier debugging, since there no need to find out the extra >>>> mapping). Users of libxc that want to establish a particular >>>> (rather >>>> than an allocated) mapping are still free to do so, as well as >>>> tool >>>> stacks not based on libxc wanting to implement an allocation based >>>> model (which is why it's not the hypervisor that's being changed >>>> to >>>> enforce either model). >>>> >>>> Since libxl, like xend, already uses a 1:1 model, it's unaffected >>>> by >>>> the libxc change (and it being unaffected by the original >>>> hypervisor >>>> side changes is - afaict - simply due to qemu getting spawned at a >>>> later point in time compared to the xend event flow). >>>> >>>> Signed-off-by: Jan Beulich >>>> Tested-by: Andreas Falck (on 4.1) >>>> Tested-by: Gordan Bobic (on 4.2) >>> >>> >>> In both cases tested with xend rather than xl or both? >> >> >> I can confirm that my VMs start fine with xl with this patch >> applied. > > ...and they are HVM guests with devices passed through? Yes, HVM guests with PCI passthrough NIC, VGA passthrough, and USB passthrough. Gordan