From patchwork Thu Sep 17 17:36:14 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jesse Barnes X-Patchwork-Id: 48301 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n8HHbPVA000309 for ; Thu, 17 Sep 2009 17:37:25 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754844AbZIQRgZ (ORCPT ); Thu, 17 Sep 2009 13:36:25 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755090AbZIQRgY (ORCPT ); Thu, 17 Sep 2009 13:36:24 -0400 Received: from outbound-mail-16.bluehost.com ([69.89.20.231]:38817 "HELO outbound-mail-16.bluehost.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1755150AbZIQRgT (ORCPT ); Thu, 17 Sep 2009 13:36:19 -0400 Received: (qmail 6756 invoked by uid 0); 17 Sep 2009 17:36:21 -0000 Received: from unknown (HELO box514.bluehost.com) (74.220.219.114) by outboundproxy1.bluehost.com with SMTP; 17 Sep 2009 17:36:21 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=virtuousgeek.org; h=Received:Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:X-Mailer:Mime-Version:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=ZunmzJkU6LK4XXi3njNfQQCW4aKajzz9oN7krKbvM5QM/dbwgFCzPoWbwpZFYTJjT0RMnkyJQ6wBBDd9IwqlY9RAozBvGgT5l1wT8AHkE7NYzCKUuETY4k2mRLFQ5D4m; Received: from [75.111.28.251] (helo=jbarnes-g45) by box514.bluehost.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.69) (envelope-from ) id 1MoKu5-0007jI-68; Thu, 17 Sep 2009 11:36:21 -0600 Date: Thu, 17 Sep 2009 10:36:14 -0700 From: Jesse Barnes To: Ingo Molnar Cc: Yinghai Lu , Rusty Russell , Tejun Heo , Linus Torvalds , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Thomas Gleixner , "H. Peter Anvin" Subject: Re: [git pull] first round of PCI updates for 2.6.32 Message-ID: <20090917103614.6ab1385f@jbarnes-g45> In-Reply-To: <20090917173012.GA11155@elte.hu> References: <20090915132105.2fdd1d45@jbarnes-g45> <20090917173012.GA11155@elte.hu> X-Mailer: Claws Mail 3.7.2 (GTK+ 2.17.5; i486-pc-linux-gnu) Mime-Version: 1.0 X-Identified-User: {10642:box514.bluehost.com:virtuous:virtuousgeek.org} {sentby:smtp auth 75.111.28.251 authed with jbarnes@virtuousgeek.org} Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org On Thu, 17 Sep 2009 19:30:12 +0200 Ingo Molnar wrote: > > * Jesse Barnes wrote: > > > The following changes since commit > > 332a3392188e0ad966543c87b8da2b9d246f301d: Linus Torvalds (1): > > Merge git://git.kernel.org/.../herbert/crypto-2.6 > > Since this went upstream -tip tests have been triggering nasty bootup > crashes in the PCI code: > > [ 4.366174] initcall pci_proc_init+0x0/0x7a returned 0 after 976 > usecs [ 4.373009] calling pcie_portdrv_init+0x0/0x60 @ 1 > [ 4.378368] bus: 'pci_express': registered > [ 4.382009] bus: 'pci': add driver pcieport-driver > [ 4.387058] bus: 'pci': driver_probe_device: matched device > 0000:00:0b.0 with driver pcieport-driver [ 4.396005] bus: 'pci': > really_probe: probing driver pcieport-driver with device 0000:00:0b.0 > [ 4.404056] cpumask_of_node(255): node > nr_node_ids(16) > [ 4.410007] Pid: 1, comm: swapper Not tainted 2.6.31 #14941 > [ 4.415005] Call Trace: [ 4.418010] [] ? > printk+0x22/0x35 [ 4.422009] [] > cpumask_of_node+0x32/0x74 [ 4.427007] [] > pci_device_probe+0x7a/0xee [ 4.432009] [] > driver_probe_device+0xc1/0x17a [ 4.437008] [] > __driver_attach+0x56/0x84 [ 4.442008] [] > bus_for_each_dev+0x53/0x8e [ 4.447007] [] ? > __driver_attach+0x0/0x84 [ 4.452007] [] > driver_attach+0x27/0x3a [ 4.456007] [] ? > __driver_attach+0x0/0x84 [ 4.461007] [] > bus_add_driver+0x122/0x25a [ 4.466008] [] > driver_register+0x9b/0x10c [ 4.471008] [] ? > __spin_lock_init+0x34/0x69 [ 4.476007] [] > __pci_register_driver+0x56/0xc3 [ 4.482007] [] ? > pcie_portdrv_init+0x0/0x60 [ 4.487007] [] > pcie_portdrv_init+0x3d/0x60 [ 4.492007] [] > do_one_initcall+0x6d/0x183 [ 4.497008] [] > kernel_init+0x187/0x1ec [ 4.501007] [] ? > kernel_init+0x0/0x1ec [ 4.506007] [] > kernel_thread_helper+0x7/0x10 [ 4.511207] ------------[ cut > here ]------------ [ 4.511999] WARNING: at kernel/lockdep.c:2813 > __lock_acquire+0x7bc/0x147a() [ 4.511999] Hardware name: System > Product Name [ 4.511999] Modules linked in: > [ 4.511999] Pid: 1, comm: swapper Not tainted 2.6.31 #14941 > [ 4.511999] Call Trace: > [ 4.511999] [] ? __lock_acquire+0x7bc/0x147a > [ 4.511999] [] warn_slowpath_common+0x74/0xb5 > [ 4.511999] [] ? get_partial_node+0x2c/0xbd > [ 4.511999] [] warn_slowpath_null+0x21/0x35 > [ 4.511999] [] __lock_acquire+0x7bc/0x147a > [ 4.511999] [] ? add_partial+0x26/0x62 > [ 4.511999] [] ? get_partial_node+0x2c/0xbd > [ 4.511999] [] ? add_partial+0x26/0x62 > [ 4.511999] [] ? add_partial+0x26/0x62 > [ 4.511999] [] ? __lock_acquire+0x145e/0x147a > [ 4.511999] [] ? add_partial+0x26/0x62 > [ 4.511999] [] ? get_partial_node+0x2c/0xbd > [ 4.511999] [] lock_acquire+0xce/0xf6 > [ 4.511999] [] ? get_partial_node+0x2c/0xbd > [ 4.511999] [] _spin_lock+0x35/0x55 > [ 4.511999] [] ? get_partial_node+0x2c/0xbd > [ 4.511999] [] get_partial_node+0x2c/0xbd > [ 4.511999] [] __slab_alloc+0x154/0x4a7 > [ 4.511999] [] ? irq_to_desc_alloc_node+0x99/0x2d2 > [ 4.511999] [] ? > kmem_cache_alloc_node_notrace+0x3d/0x104 [ 4.511999] [] > kmem_cache_alloc_node_notrace+0x7a/0x104 [ 4.511999] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 4.511999] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 4.511999] > [] irq_to_desc_alloc_node+0x99/0x2d2 [ 4.511999] > [] create_irq_nr+0x48/0xce [ 4.511999] [] > arch_setup_msi_irqs+0x6f/0x1b3 [ 4.511999] [] ? > alloc_msi_entry+0x2b/0xb1 [ 4.511999] [] > pci_enable_msi_block+0x228/0x2bf [ 4.511999] [] > pcie_port_device_register+0x318/0x508 [ 4.511999] [] ? > trace_hardirqs_on+0x19/0x2c [ 4.511999] [] ? > _spin_unlock_irqrestore+0x55/0x7d [ 4.511999] [] ? > pci_bus_read_config_word+0x6f/0x8c [ 4.511999] [] ? > pcie_port_device_probe+0x3b/0x6e [ 4.511999] [] > pcie_portdrv_probe+0x67/0x8f [ 4.511999] [] > local_pci_probe+0x22/0x35 [ 4.511999] [] > pci_device_probe+0xa4/0xee [ 4.511999] [] > driver_probe_device+0xc1/0x17a [ 4.511999] [] > __driver_attach+0x56/0x84 [ 4.511999] [] > bus_for_each_dev+0x53/0x8e [ 4.511999] [] ? > __driver_attach+0x0/0x84 [ 4.511999] [] > driver_attach+0x27/0x3a [ 4.511999] [] ? > __driver_attach+0x0/0x84 [ 4.511999] [] > bus_add_driver+0x122/0x25a [ 4.511999] [] > driver_register+0x9b/0x10c [ 4.511999] [] ? > __spin_lock_init+0x34/0x69 [ 4.511999] [] > __pci_register_driver+0x56/0xc3 [ 4.511999] [] ? > pcie_portdrv_init+0x0/0x60 [ 4.511999] [] > pcie_portdrv_init+0x3d/0x60 [ 4.511999] [] > do_one_initcall+0x6d/0x183 [ 4.511999] [] > kernel_init+0x187/0x1ec [ 4.511999] [] ? > kernel_init+0x0/0x1ec [ 4.511999] [] > kernel_thread_helper+0x7/0x10 [ 4.511999] ---[ end trace > 5a5d197966b56a2e ]--- [ 5.704001] BUG: spinlock lockup on CPU#1, > swapper/1, c1bdbaac [ 5.704001] Pid: 1, comm: swapper Tainted: > G W 2.6.31 #14941 [ 5.704001] Call Trace: > [ 5.704001] [] ? printk+0x22/0x35 > [ 5.704001] [] _raw_spin_lock+0x106/0x142 > [ 5.704001] [] _spin_lock+0x3c/0x55 > [ 5.704001] [] ? get_partial_node+0x2c/0xbd > [ 5.704001] [] get_partial_node+0x2c/0xbd > [ 5.704001] [] __slab_alloc+0x154/0x4a7 > [ 5.704001] [] ? irq_to_desc_alloc_node+0x99/0x2d2 > [ 5.704001] [] ? > kmem_cache_alloc_node_notrace+0x3d/0x104 [ 5.704001] [] > kmem_cache_alloc_node_notrace+0x7a/0x104 [ 5.704001] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] create_irq_nr+0x48/0xce [ 5.704001] [] > arch_setup_msi_irqs+0x6f/0x1b3 [ 5.704001] [] ? > alloc_msi_entry+0x2b/0xb1 [ 5.704001] [] > pci_enable_msi_block+0x228/0x2bf [ 5.704001] [] > pcie_port_device_register+0x318/0x508 [ 5.704001] [] ? > trace_hardirqs_on+0x19/0x2c [ 5.704001] [] ? > _spin_unlock_irqrestore+0x55/0x7d [ 5.704001] [] ? > pci_bus_read_config_word+0x6f/0x8c [ 5.704001] [] ? > pcie_port_device_probe+0x3b/0x6e [ 5.704001] [] > pcie_portdrv_probe+0x67/0x8f [ 5.704001] [] > local_pci_probe+0x22/0x35 [ 5.704001] [] > pci_device_probe+0xa4/0xee [ 5.704001] [] > driver_probe_device+0xc1/0x17a [ 5.704001] [] > __driver_attach+0x56/0x84 [ 5.704001] [] > bus_for_each_dev+0x53/0x8e [ 5.704001] [] ? > __driver_attach+0x0/0x84 [ 5.704001] [] > driver_attach+0x27/0x3a [ 5.704001] [] ? > __driver_attach+0x0/0x84 [ 5.704001] [] > bus_add_driver+0x122/0x25a [ 5.704001] [] > driver_register+0x9b/0x10c [ 5.704001] [] ? > __spin_lock_init+0x34/0x69 [ 5.704001] [] > __pci_register_driver+0x56/0xc3 [ 5.704001] [] ? > pcie_portdrv_init+0x0/0x60 [ 5.704001] [] > pcie_portdrv_init+0x3d/0x60 [ 5.704001] [] > do_one_initcall+0x6d/0x183 [ 5.704001] [] > kernel_init+0x187/0x1ec [ 5.704001] [] ? > kernel_init+0x0/0x1ec [ 5.704001] [] > kernel_thread_helper+0x7/0x10 [ 5.704001] sending NMI to all CPUs: > [ 5.704001] NMI backtrace for cpu 1 > [ 5.704001] > [ 5.704001] Pid: 1, comm: swapper Tainted: G W (2.6.31 > #14941) System Product Name [ 5.704001] EIP: 0060:[] > EFLAGS: 00000046 CPU: 1 [ 5.704001] EIP is at > trace_hardirqs_off_caller+0xb8/0xbd [ 5.704001] EAX: 00000000 EBX: > f60b8000 ECX: c1be08e4 EDX: c103ff84 [ 5.704001] ESI: c103ff84 > EDI: 00000006 EBP: f60a2c30 ESP: f60a2c24 [ 5.704001] DS: 007b > ES: 007b FS: 00d8 GS: 00e0 SS: 0068 [ 5.704001] CR0: 8005003b CR2: > 00000000 CR3: 01bd7000 CR4: 000006f0 [ 5.704001] DR0: 00000000 > DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 5.704001] DR6: > ffff0ff0 DR7: 00000400 [ 5.704001] Call Trace: > [ 5.704001] [] trace_hardirqs_off+0x19/0x2c > [ 5.704001] [] default_send_IPI_mask_logical+0xde/0x100 > [ 5.704001] [] default_send_IPI_all+0x35/0x87 > [ 5.704001] [] arch_trigger_all_cpu_backtrace+0x5c/0x9e > [ 5.704001] [] _raw_spin_lock+0x10b/0x142 > [ 5.704001] [] _spin_lock+0x3c/0x55 > [ 5.704001] [] ? get_partial_node+0x2c/0xbd > [ 5.704001] [] get_partial_node+0x2c/0xbd > [ 5.704001] [] __slab_alloc+0x154/0x4a7 > [ 5.704001] [] ? irq_to_desc_alloc_node+0x99/0x2d2 > [ 5.704001] [] ? > kmem_cache_alloc_node_notrace+0x3d/0x104 [ 5.704001] [] > kmem_cache_alloc_node_notrace+0x7a/0x104 [ 5.704001] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] create_irq_nr+0x48/0xce [ 5.704001] [] > arch_setup_msi_irqs+0x6f/0x1b3 [ 5.704001] [] ? > alloc_msi_entry+0x2b/0xb1 [ 5.704001] [] > pci_enable_msi_block+0x228/0x2bf [ 5.704001] [] > pcie_port_device_register+0x318/0x508 [ 5.704001] [] ? > trace_hardirqs_on+0x19/0x2c [ 5.704001] [] ? > _spin_unlock_irqrestore+0x55/0x7d [ 5.704001] [] ? > pci_bus_read_config_word+0x6f/0x8c [ 5.704001] [] ? > pcie_port_device_probe+0x3b/0x6e [ 5.704001] [] > pcie_portdrv_probe+0x67/0x8f [ 5.704001] [] > local_pci_probe+0x22/0x35 [ 5.704001] [] > pci_device_probe+0xa4/0xee [ 5.704001] [] > driver_probe_device+0xc1/0x17a [ 5.704001] [] > __driver_attach+0x56/0x84 [ 5.704001] [] > bus_for_each_dev+0x53/0x8e [ 5.704001] [] ? > __driver_attach+0x0/0x84 [ 5.704001] [] > driver_attach+0x27/0x3a [ 5.704001] [] ? > __driver_attach+0x0/0x84 [ 5.704001] [] > bus_add_driver+0x122/0x25a [ 5.704001] [] > driver_register+0x9b/0x10c [ 5.704001] [] ? > __spin_lock_init+0x34/0x69 [ 5.704001] [] > __pci_register_driver+0x56/0xc3 [ 5.704001] [] ? > pcie_portdrv_init+0x0/0x60 [ 5.704001] [] > pcie_portdrv_init+0x3d/0x60 [ 5.704001] [] > do_one_initcall+0x6d/0x183 [ 5.704001] [] > kernel_init+0x187/0x1ec [ 5.704001] [] ? > kernel_init+0x0/0x1ec [ 5.704001] [] > kernel_thread_helper+0x7/0x10 [ 5.704001] Pid: 1, comm: swapper > Tainted: G W 2.6.31 #14941 [ 5.704001] Call Trace: > [ 5.704001] [] ? show_regs+0x34/0x4b > [ 5.704001] [] nmi_watchdog_tick+0xea/0x222 > [ 5.704001] [] do_nmi+0xa9/0x2a9 > [ 5.704001] [] ? > default_send_IPI_mask_logical+0xde/0x100 [ 5.704001] [] > nmi_stack_correct+0x2f/0x34 [ 5.704001] [] ? > default_send_IPI_mask_logical+0xde/0x100 [ 5.704001] > [] ? default_send_IPI_mask_logical+0xde/0x100 > [ 5.704001] [] ? trace_hardirqs_off_caller+0xb8/0xbd > [ 5.704001] [] trace_hardirqs_off+0x19/0x2c > [ 5.704001] [] default_send_IPI_mask_logical+0xde/0x100 > [ 5.704001] [] default_send_IPI_all+0x35/0x87 > [ 5.704001] [] arch_trigger_all_cpu_backtrace+0x5c/0x9e > [ 5.704001] [] _raw_spin_lock+0x10b/0x142 > [ 5.704001] [] _spin_lock+0x3c/0x55 [ 5.704001] > [] ? get_partial_node+0x2c/0xbd [ 5.704001] > [] get_partial_node+0x2c/0xbd [ 5.704001] [] > __slab_alloc+0x154/0x4a7 [ 5.704001] [] ? > irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] [] ? > kmem_cache_alloc_node_notrace+0x3d/0x104 [ 5.704001] [] > kmem_cache_alloc_node_notrace+0x7a/0x104 [ 5.704001] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] ? irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] irq_to_desc_alloc_node+0x99/0x2d2 [ 5.704001] > [] create_irq_nr+0x48/0xce [ 5.704001] [] > arch_setup_msi_irqs+0x6f/0x1b3 [ 5.704001] [] ? > alloc_msi_entry+0x2b/0xb1 [ 5.704001] [] > pci_enable_msi_block+0x228/0x2bf [ 5.704001] [] > pcie_port_device_register+0x318/0x508 [ 5.704001] [] ? > trace_hardirqs_on+0x19/0x2c [ 5.704001] [] ? > _spin_unlock_irqrestore+0x55/0x7d [ 5.704001] [] ? > pci_bus_read_config_word+0x6f/0x8c [ 5.704001] [] ? > pcie_port_device_probe+0x3b/0x6e [ 5.704001] [] > pcie_portdrv_probe+0x67/0x8f [ 5.704001] [] > local_pci_probe+0x22/0x35 [ 5.704001] [] > pci_device_probe+0xa4/0xee [ 5.704001] [] > driver_probe_device+0xc1/0x17a [ 5.704001] [] > __driver_attach+0x56/0x84 [ 5.704001] [] > bus_for_each_dev+0x53/0x8e [ 5.704001] [] ? > __driver_attach+0x0/0x84 [ 5.704001] [] > driver_attach+0x27/0x3a [ 5.704001] [] ? > __driver_attach+0x0/0x84 [ 5.704001] [] > bus_add_driver+0x122/0x25a [ 5.704001] [] > driver_register+0x9b/0x10c [ 5.704001] [] ? > __spin_lock_init+0x34/0x69 [ 5.704001] [] > __pci_register_driver+0x56/0xc3 [ 5.704001] [] ? > pcie_portdrv_init+0x0/0x60 [ 5.704001] [] > pcie_portdrv_init+0x3d/0x60 [ 5.704001] [] > do_one_initcall+0x6d/0x183 [ 5.704001] [] > kernel_init+0x187/0x1ec [ 5.704001] [] ? > kernel_init+0x0/0x1ec [ 5.704001] [] > kernel_thread_helper+0x7/0x10 [ 129.036999] NMI backtrace for cpu 0 > [ 129.036999] > [ 129.036999] Pid: 0, comm: swapper Tainted: G W (2.6.31 > #14941) System Product Name [ 129.036999] EIP: 0060:[] > EFLAGS: 00000246 CPU: 0 [ 129.036999] EIP is at > default_idle+0x9a/0x110 [ 129.036999] EAX: 00000000 EBX: c1c560d0 > ECX: c102af40 EDX: 00733000 [ 129.036999] ESI: 00000000 EDI: > c1bd8000 EBP: c1bd6fa0 ESP: c1bd6f7c [ 129.036999] DS: 007b ES: > 007b FS: 00d8 GS: 00e0 SS: 0068 [ 129.036999] CR0: 8005003b CR2: > 00000000 CR3: 01bd7000 CR4: 000006f0 [ 129.036999] DR0: 00000000 > DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 129.036999] DR6: > ffff0ff0 DR7: 00000400 [ 129.036999] Call Trace: > [ 129.036999] [] ? rest_init+0x7f/0x92 > [ 129.036999] [] cpu_idle+0xc0/0xee > [ 129.036999] [] rest_init+0x7f/0x92 > [ 129.036999] [] start_kernel+0x3f8/0x410 > [ 129.036999] [] __init_begin+0x79/0x8f > [ 129.036999] Pid: 0, comm: swapper Tainted: G W 2.6.31 > #14941 [ 129.036999] Call Trace: > [ 129.036999] [] ? show_regs+0x34/0x4b > [ 129.036999] [] nmi_watchdog_tick+0xea/0x222 > [ 129.036999] [] do_nmi+0xa9/0x2a9 > [ 129.036999] [] nmi_stack_correct+0x2f/0x34 > [ 129.036999] [] ? cpu_idle+0xba/0xee > [ 129.036999] [] ? default_idle+0x9a/0x110 > [ 129.036999] [] ? rest_init+0x7f/0x92 > [ 129.036999] [] cpu_idle+0xc0/0xee > [ 129.036999] [] rest_init+0x7f/0x92 > [ 129.036999] [] start_kernel+0x3f8/0x410 > [ 129.036999] [] __init_begin+0x79/0x8f > > Config and full bootlog attached. > > Note: > > CONFIG_DEBUG_PER_CPU_MAPS=y > CONFIG_CPUMASK_OFFSTACK=y Does this patch fix it? I sent it to you earlier but I never heard back... --- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c index eb6eb61..ffcb516 100644 --- a/arch/x86/pci/common.c +++ b/arch/x86/pci/common.c @@ -640,7 +640,7 @@ int get_mp_bus_to_node(int busnum) #else /* CONFIG_X86_32 */ -static unsigned char mp_bus_to_node[BUS_NR] = { +static int mp_bus_to_node[BUS_NR] = { [0 ... BUS_NR - 1] = -1 };