netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* BUG: spinlock bad magic on CPU#1, swapper/1
@ 2009-08-05  9:36 Frans Pop
  2009-08-05  9:50 ` Frans Pop
  0 siblings, 1 reply; 5+ messages in thread
From: Frans Pop @ 2009-08-05  9:36 UTC (permalink / raw)
  To: Linux Kernel Mailing List; +Cc: netdev

Current v2.6.31-rc5-246-g90bc1a6 gives me:

BUG: spinlock bad magic on CPU#1, swapper/1
 lock: ffff88007e1889c8, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
Pid: 1, comm: swapper Not tainted 2.6.31-rc5 #4
Call Trace:
 [<ffffffff811345e8>] spin_bug+0xa2/0xaa
 [<ffffffff8113469e>] _raw_spin_lock+0x23/0x135
 [<ffffffff8125664e>] _spin_lock_bh+0x19/0x1e
 [<ffffffff811e3702>] alloc_netdev_mq+0x127/0x211
 [<ffffffff81433487>] ? netdev_init+0x6a/0xac
 [<ffffffff811a81eb>] ? loopback_setup+0x0/0x7b
 [<ffffffff8142e718>] loopback_net_init+0x30/0x7a
 [<ffffffff811dd62e>] register_pernet_device+0x2b/0x58
 [<ffffffff814336bd>] net_dev_init+0x13d/0x19b
 [<ffffffff81433580>] ? net_dev_init+0x0/0x19b
 [<ffffffff8100905c>] do_one_initcall+0x56/0x12b
 [<ffffffff8106f55b>] ? register_irq_proc+0xb0/0xcc
 [<ffffffff810e0000>] ? proc_pid_cmdline+0x5a/0xf9
 [<ffffffff8140f65d>] kernel_init+0x14d/0x1a3
 [<ffffffff8100ca7a>] child_rip+0xa/0x20
 [<ffffffff8140f510>] ? kernel_init+0x0/0x1a3
 [<ffffffff8100ca70>] ? child_rip+0x0/0x20

Error occurs during early boot (between PCI/ACPI init and PnP init).

.31-rc5 itself did not give that error.

Cheers,
FJP

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: BUG: spinlock bad magic on CPU#1, swapper/1
  2009-08-05  9:36 BUG: spinlock bad magic on CPU#1, swapper/1 Frans Pop
@ 2009-08-05  9:50 ` Frans Pop
  2009-08-05 10:02   ` Eric Dumazet
  2009-08-05 10:03   ` Jiri Pirko
  0 siblings, 2 replies; 5+ messages in thread
From: Frans Pop @ 2009-08-05  9:50 UTC (permalink / raw)
  To: Linux Kernel Mailing List; +Cc: netdev, Jiri Pirko

On Wednesday 05 August 2009, Frans Pop wrote:
> Current v2.6.31-rc5-246-g90bc1a6 gives me:
>
> BUG: spinlock bad magic on CPU#1, swapper/1
>  lock: ffff88007e1889c8, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
> Pid: 1, comm: swapper Not tainted 2.6.31-rc5 #4 
> Call Trace:
>  [<ffffffff811345e8>] spin_bug+0xa2/0xaa
>  [<ffffffff8113469e>] _raw_spin_lock+0x23/0x135
>  [<ffffffff8125664e>] _spin_lock_bh+0x19/0x1e
>  [<ffffffff811e3702>] alloc_netdev_mq+0x127/0x211
>  [<ffffffff81433487>] ? netdev_init+0x6a/0xac
>  [<ffffffff811a81eb>] ? loopback_setup+0x0/0x7b
>  [<ffffffff8142e718>] loopback_net_init+0x30/0x7a
>  [<ffffffff811dd62e>] register_pernet_device+0x2b/0x58
>  [<ffffffff814336bd>] net_dev_init+0x13d/0x19b
>  [<ffffffff81433580>] ? net_dev_init+0x0/0x19b
>  [<ffffffff8100905c>] do_one_initcall+0x56/0x12b
>  [<ffffffff8106f55b>] ? register_irq_proc+0xb0/0xcc
>  [<ffffffff810e0000>] ? proc_pid_cmdline+0x5a/0xf9
>  [<ffffffff8140f65d>] kernel_init+0x14d/0x1a3
>  [<ffffffff8100ca7a>] child_rip+0xa/0x20
>  [<ffffffff8140f510>] ? kernel_init+0x0/0x1a3
>  [<ffffffff8100ca70>] ? child_rip+0x0/0x20
>
> Error occurs during early boot (between PCI/ACPI init and PnP init).

Reverting the following commit fixes it:
commit a6ac65db2329e7685299666f5f7b6093c7b0f3a0
Author: Jiri Pirko <jpirko@redhat.com>
Date:   Thu Jul 30 01:06:12 2009 +0000

    net: restore the original spinlock to protect unicast list

    There is a path when an assetion in dev_unicast_sync() appears.

    igmp6_group_added -> dev_mc_add -> __dev_set_rx_mode ->
    -> vlan_dev_set_rx_mode -> dev_unicast_sync

    Therefore we cannot protect this list with rtnl. This patch restores the
    original protecting this list with spinlock.

    Signed-off-by: Jiri Pirko <jpirko@redhat.com>
    Tested-by: Meelis Roos <mroos@linux.ee>
    Signed-off-by: David S. Miller <davem@davemloft.net>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: BUG: spinlock bad magic on CPU#1, swapper/1
  2009-08-05  9:50 ` Frans Pop
@ 2009-08-05 10:02   ` Eric Dumazet
  2009-08-05 10:26     ` Frans Pop
  2009-08-05 10:03   ` Jiri Pirko
  1 sibling, 1 reply; 5+ messages in thread
From: Eric Dumazet @ 2009-08-05 10:02 UTC (permalink / raw)
  To: Frans Pop; +Cc: Linux Kernel Mailing List, netdev, Jiri Pirko

Frans Pop a écrit :
> On Wednesday 05 August 2009, Frans Pop wrote:
>> Current v2.6.31-rc5-246-g90bc1a6 gives me:
>>
>> BUG: spinlock bad magic on CPU#1, swapper/1
>>  lock: ffff88007e1889c8, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
>> Pid: 1, comm: swapper Not tainted 2.6.31-rc5 #4 
>> Call Trace:
>>  [<ffffffff811345e8>] spin_bug+0xa2/0xaa
>>  [<ffffffff8113469e>] _raw_spin_lock+0x23/0x135
>>  [<ffffffff8125664e>] _spin_lock_bh+0x19/0x1e
>>  [<ffffffff811e3702>] alloc_netdev_mq+0x127/0x211
>>  [<ffffffff81433487>] ? netdev_init+0x6a/0xac
>>  [<ffffffff811a81eb>] ? loopback_setup+0x0/0x7b
>>  [<ffffffff8142e718>] loopback_net_init+0x30/0x7a
>>  [<ffffffff811dd62e>] register_pernet_device+0x2b/0x58
>>  [<ffffffff814336bd>] net_dev_init+0x13d/0x19b
>>  [<ffffffff81433580>] ? net_dev_init+0x0/0x19b
>>  [<ffffffff8100905c>] do_one_initcall+0x56/0x12b
>>  [<ffffffff8106f55b>] ? register_irq_proc+0xb0/0xcc
>>  [<ffffffff810e0000>] ? proc_pid_cmdline+0x5a/0xf9
>>  [<ffffffff8140f65d>] kernel_init+0x14d/0x1a3
>>  [<ffffffff8100ca7a>] child_rip+0xa/0x20
>>  [<ffffffff8140f510>] ? kernel_init+0x0/0x1a3
>>  [<ffffffff8100ca70>] ? child_rip+0x0/0x20
>>
>> Error occurs during early boot (between PCI/ACPI init and PnP init).
> 
> Reverting the following commit fixes it:
> commit a6ac65db2329e7685299666f5f7b6093c7b0f3a0
> Author: Jiri Pirko <jpirko@redhat.com>
> Date:   Thu Jul 30 01:06:12 2009 +0000
> 
>     net: restore the original spinlock to protect unicast list
> 
>     There is a path when an assetion in dev_unicast_sync() appears.
> 
>     igmp6_group_added -> dev_mc_add -> __dev_set_rx_mode ->
>     -> vlan_dev_set_rx_mode -> dev_unicast_sync
> 
>     Therefore we cannot protect this list with rtnl. This patch restores the
>     original protecting this list with spinlock.
> 
>     Signed-off-by: Jiri Pirko <jpirko@redhat.com>
>     Tested-by: Meelis Roos <mroos@linux.ee>
>     Signed-off-by: David S. Miller <davem@davemloft.net>
> --


Ingo posted a fix 

http://marc.info/?l=linux-kernel&m=124945666109347&w=2

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: BUG: spinlock bad magic on CPU#1, swapper/1
  2009-08-05  9:50 ` Frans Pop
  2009-08-05 10:02   ` Eric Dumazet
@ 2009-08-05 10:03   ` Jiri Pirko
  1 sibling, 0 replies; 5+ messages in thread
From: Jiri Pirko @ 2009-08-05 10:03 UTC (permalink / raw)
  To: Frans Pop; +Cc: Linux Kernel Mailing List, netdev

Wed, Aug 05, 2009 at 11:50:52AM CEST, elendil@planet.nl wrote:
>On Wednesday 05 August 2009, Frans Pop wrote:
>> Current v2.6.31-rc5-246-g90bc1a6 gives me:
>>
>> BUG: spinlock bad magic on CPU#1, swapper/1
>>  lock: ffff88007e1889c8, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
>> Pid: 1, comm: swapper Not tainted 2.6.31-rc5 #4 
>> Call Trace:
>>  [<ffffffff811345e8>] spin_bug+0xa2/0xaa
>>  [<ffffffff8113469e>] _raw_spin_lock+0x23/0x135
>>  [<ffffffff8125664e>] _spin_lock_bh+0x19/0x1e
>>  [<ffffffff811e3702>] alloc_netdev_mq+0x127/0x211
>>  [<ffffffff81433487>] ? netdev_init+0x6a/0xac
>>  [<ffffffff811a81eb>] ? loopback_setup+0x0/0x7b
>>  [<ffffffff8142e718>] loopback_net_init+0x30/0x7a
>>  [<ffffffff811dd62e>] register_pernet_device+0x2b/0x58
>>  [<ffffffff814336bd>] net_dev_init+0x13d/0x19b
>>  [<ffffffff81433580>] ? net_dev_init+0x0/0x19b
>>  [<ffffffff8100905c>] do_one_initcall+0x56/0x12b
>>  [<ffffffff8106f55b>] ? register_irq_proc+0xb0/0xcc
>>  [<ffffffff810e0000>] ? proc_pid_cmdline+0x5a/0xf9
>>  [<ffffffff8140f65d>] kernel_init+0x14d/0x1a3
>>  [<ffffffff8100ca7a>] child_rip+0xa/0x20
>>  [<ffffffff8140f510>] ? kernel_init+0x0/0x1a3
>>  [<ffffffff8100ca70>] ? child_rip+0x0/0x20
>>
>> Error occurs during early boot (between PCI/ACPI init and PnP init).
>
>Reverting the following commit fixes it:

Sure it fixes it but it also exposes the previous bug. I would rather suggest
to go with Ingo's patch.

Jirka

>commit a6ac65db2329e7685299666f5f7b6093c7b0f3a0
>Author: Jiri Pirko <jpirko@redhat.com>
>Date:   Thu Jul 30 01:06:12 2009 +0000
>
>    net: restore the original spinlock to protect unicast list
>
>    There is a path when an assetion in dev_unicast_sync() appears.
>
>    igmp6_group_added -> dev_mc_add -> __dev_set_rx_mode ->
>    -> vlan_dev_set_rx_mode -> dev_unicast_sync
>
>    Therefore we cannot protect this list with rtnl. This patch restores the
>    original protecting this list with spinlock.
>
>    Signed-off-by: Jiri Pirko <jpirko@redhat.com>
>    Tested-by: Meelis Roos <mroos@linux.ee>
>    Signed-off-by: David S. Miller <davem@davemloft.net>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: BUG: spinlock bad magic on CPU#1, swapper/1
  2009-08-05 10:02   ` Eric Dumazet
@ 2009-08-05 10:26     ` Frans Pop
  0 siblings, 0 replies; 5+ messages in thread
From: Frans Pop @ 2009-08-05 10:26 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: Linux Kernel Mailing List, netdev, Jiri Pirko

On Wednesday 05 August 2009, Eric Dumazet wrote:
> Ingo posted a fix
> http://marc.info/?l=linux-kernel&m=124945666109347&w=2

Thanks. I'd missed that mail.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-08-05 10:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-05  9:36 BUG: spinlock bad magic on CPU#1, swapper/1 Frans Pop
2009-08-05  9:50 ` Frans Pop
2009-08-05 10:02   ` Eric Dumazet
2009-08-05 10:26     ` Frans Pop
2009-08-05 10:03   ` Jiri Pirko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).