From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: [PATCH v4] kvm: Use a bitmap for tracking used GSIs Date: Wed, 13 May 2009 17:07:35 -0600 Message-ID: <1242256055.9456.326.camel@lappy> References: <20090512220142.5663.72948.stgit@dl380g6-3.ned.telco.ned.telco> <20090513043835.6696.27384.stgit@dl380g6-3.ned.telco.ned.telco> <4A0A973A.9020502@redhat.com> <1242217702.4786.59.camel@2710p.home> <4A0ABEA8.6030103@redhat.com> <1242219343.4786.66.camel@2710p.home> <4A0AC453.2000907@redhat.com> <1242220276.4786.67.camel@2710p.home> <20090513135502.GA1405@redhat.com> <1242224129.9456.6.camel@lappy> <1242225238.9456.9.camel@lappy> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: Avi Kivity , kvm@vger.kernel.org, sheng.yang@intel.com To: "Michael S. Tsirkin" Return-path: Received: from g4t0016.houston.hp.com ([15.201.24.19]:29143 "EHLO g4t0016.houston.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751731AbZEMXHg (ORCPT ); Wed, 13 May 2009 19:07:36 -0400 In-Reply-To: <1242225238.9456.9.camel@lappy> Sender: kvm-owner@vger.kernel.org List-ID: On Wed, 2009-05-13 at 08:33 -0600, Alex Williamson wrote: > On Wed, 2009-05-13 at 08:15 -0600, Alex Williamson wrote: > > On Wed, 2009-05-13 at 16:55 +0300, Michael S. Tsirkin wrote: > > > Very surprising: I haven't seen any driver disable MSI expect on device > > > destructor path. Is this a linux guest? > > > > Yes, Debian 2.6.26 kernel. I'll check it it behaves the same on newer > > upstream kernels and try to figure out why it's doing it. > > Updating the guest to 2.6.29 seems to fix the interrupt toggling. So > it's either something in older kernels or something debian introduced, > but that seems unlikely. For the curious, this was fixed prior to 2.6.27-rc1 by this: commit ce6fce4295ba727b36fdc73040e444bd1aae64cd Author: Matthew Wilcox Date: Fri Jul 25 15:42:58 2008 -0600 PCI MSI: Don't disable MSIs if the mask bit isn't supported David Vrabel has a device which generates an interrupt storm on the INTx pin if we disable MSI interrupts altogether. Masking interrupts is only a performance optimisation, so we can ignore the request to mask the interrupt. It looks like without the maskbit attribute on MSI, the default way to mask an MSI interrupt was to toggle the MSI enable bit. This was introduced in 58e0543e8f355b32f0778a18858b255adb7402ae, so it's lifespan was probably 2.6.21 - 2.6.26. Alex