From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from fgwmail6.fujitsu.co.jp ([192.51.44.36]:36117 "EHLO fgwmail6.fujitsu.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751648Ab2AFQxI (ORCPT ); Fri, 6 Jan 2012 11:53:08 -0500 Message-ID: <4F0726EF.4060103@jp.fujitsu.com> Date: Fri, 06 Jan 2012 11:53:03 -0500 From: MUNEDA Takahiro MIME-Version: 1.0 To: Greg KH CC: linux-pci@vger.kernel.org Subject: Re: [PATCH] Add pcie_hp=nomsi to disable MSI for pciehp driver References: <20120106095637.16292.29895.sendpatchset@dhcp-189-101.bos.redhat.com> <20120106132408.GB8989@kroah.com> In-Reply-To: <20120106132408.GB8989@kroah.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Sender: linux-pci-owner@vger.kernel.org List-ID: On Fri, 6 Jan 2012 05:24:08 -0800, Greg KH wrote: > On Fri, Jan 06, 2012 at 04:56:37AM -0500, MUNEDA Takahiro wrote: >> Not to use MSI/MSI-X for pciehp, add a kernel parameter, pcie_hp=nomsi. >> >> In my environment, while shutting down, following stack trace is shown >> sometimes. >> >> irq 16: nobody cared (try booting with the "irqpoll" option) >> Pid: 1081, comm: reboot Not tainted 3.2.0 #1 >> Call Trace: >> [] __report_bad_irq+0x3d/0xe0 >> [] note_interrupt+0x15c/0x210 >> [] handle_irq_event_percpu+0xb5/0x210 >> [] handle_irq_event+0x41/0x70 >> [] handle_fasteoi_irq+0x55/0xc0 >> [] handle_irq+0x46/0xb0 >> [] do_IRQ+0x5d/0xe0 >> [] common_interrupt+0x6e/0x6e >> [] ? __do_softirq+0x60/0x210 >> [] ? hrtimer_interrupt+0x151/0x240 >> [] call_softirq+0x1c/0x30 >> [] do_softirq+0x65/0xa0 >> [] irq_exit+0xbd/0xe0 >> [] smp_apic_timer_interrupt+0x6e/0x99 >> [] apic_timer_interrupt+0x6e/0x80 >> [] ? _raw_spin_unlock_irqrestore+0x11/0x20 >> [] pci_bus_write_config_word+0x6c/0x80 >> [] pci_intx+0x52/0xa0 >> [] pci_intx_for_msi+0x1d/0x30 >> [] pci_msi_shutdown+0x7b/0x110 >> [] pci_device_shutdown+0x34/0x50 >> [] device_shutdown+0x2f/0x140 >> [] kernel_restart_prepare+0x31/0x40 >> [] kernel_restart+0x16/0x60 >> [] sys_reboot+0x1ad/0x220 >> [] ? do_page_fault+0x1e0/0x460 >> [] ? __sync_filesystem+0x90/0x90 >> [] ? __cond_resched+0x2a/0x40 >> [] ? _cond_resched+0x30/0x40 >> [] ? iterate_supers+0xb7/0xd0 >> [] system_call_fastpath+0x16/0x1b >> handlers: >> [] usb_hcd_irq >> [] usb_hcd_irq >> [] usb_hcd_irq >> Disabling IRQ #16 >> >> An un-wanted interrupt is generated when PCI driver switches from >> MSI/MSI-X to INTx while shutting down the device. The interrupt does >> not happen if MSI/MSI-X is not used on the device. >> I confirmed that this problem does not happen if pcie_hp=nomsi was >> specified and hotplug operation worked fine as usual. >> >> Signed-off-by: MUNEDA Takahiro > > There's no way to figure this out automatically? How about just doing > this for the PCI ids of your hardware? > > Adding a boot option is a pain, as users will not know they need to do > it, and distros will not know they need to add it to their images. > Please try to do this in an automated way if at all possible. I can understand, but why don't we have a option to disable only for pciehp driver? I'm happy by adding the PCI ids of my hardware, but this issue may happen on other devices. Anyway, I'll send an updated patch to disable MSI/MSI-X on my devices automatically. Thanks, Takahiro