Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756106Ab3H2KrP (ORCPT ); Thu, 29 Aug 2013 06:47:15 -0400 Received: from nat28.tlf.novell.com ([130.57.49.28]:56693 "EHLO nat28.tlf.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753284Ab3H2KrO convert rfc822-to-8bit (ORCPT ); Thu, 29 Aug 2013 06:47:14 -0400 Message-Id: <521F42CD02000078000EF5D0@nat28.tlf.novell.com> X-Mailer: Novell GroupWise Internet Agent 12.0.2 Date: Thu, 29 Aug 2013 11:47:09 +0100 From: "Jan Beulich" To: Cc: "Bjorn Helgaas" , "xen-devel" , "Feng Jin" , "Sucheta Chakraborty" , "linux-kernel@vger.kernel.org" , "linux-pci@vger.kernel.org" Subject: Re: [Xen-devel] [PATCH 2/3 v3] Refactor MSI restore call-chain to drop unnecessary argument References: <521EB76B.8090903@oracle.com> <521F12FC02000078000EF503@nat28.tlf.novell.com> <521F196E.2010102@oracle.com> In-Reply-To: <521F196E.2010102@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8BIT Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1850 Lines: 45 >>> On 29.08.13 at 11:50, Zhenzhong Duan wrote: > On 2013-08-29 15:23, Jan Beulich wrote: >>>>> On 29.08.13 at 04:52, Zhenzhong Duan wrote: >>> But in initial domain (aka priviliged guest), it's different. >>> Driver init call graph under initial domain: >>> driver_init-> >>> msix_capability_init-> >>> msix_program_entries-> >>> msix_mask_irq-> >>> entry->masked = 1 >>> request_irq-> >>> __setup_irq-> >>> irq_startup-> >>> __startup_pirq-> >>> EVTCHNOP_bind_pirq hypercall (trap into Xen) >>> [Xen:] >>> pirq_guest_bind-> >>> startup_msi_irq-> >>> unmask_msi_irq-> >>> msi_set_mask_bit-> >>> entry->msi_attrib.masked = 0 >>> >>> So entry->msi_attrib.masked in xen side always has newest value. entry->masked >>> in initial domain is untouched and is 1 after msix_capability_init. >> And as said several times before - Linux shouldn't be touching >> the MSI-X table at all during initial setup or resume (it should in >> particular not rely on such accesses to not fault, as being a >> privilege violation); all it needs to do is update its software state. > My patch just remove access to msix mask register in dom0. Anything > wrong with that? Oh, okay, I mis-read the change then - you're moving the mask bit changing from __pci_restore_msi{,x}_state() to default_restore_msi_irqs(). Which of course is fine if Xen (as you say) doesn't use the latter. Sorry for the noise then, Jan -- 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/