* net-next warning at kernel/softirq.c:159 local_bh_enable @ 2012-07-06 3:20 Or Gerlitz 2012-07-06 4:08 ` David Miller 2012-07-06 4:17 ` Or Gerlitz 0 siblings, 2 replies; 6+ messages in thread From: Or Gerlitz @ 2012-07-06 3:20 UTC (permalink / raw) To: David Miller; +Cc: netdev, Shlomo Pongratz Dave, Shlomo saw too the ipv6 dst crash that was reported over the list and also this warning when he rebased to net-next yesterday Or. [ 285.551769] ------------[ cut here ]------------ [ 285.552693] WARNING: at kernel/softirq.c:159 local_bh_enable+0x7a/0xa0() [ 285.552693] Hardware name: X7DWU [ 285.552693] Modules linked in: ib_ipoib ib_cm ib_sa mlx4_ib mlx4_en mlx4_core ib_mad ib_core netconsole nfs lockd fscache auth_rpcgss nfs_acl bnx2fc cnic 8021q uio garp fcoe libfcoe stp libfc llc scsi_transport_fc scsi_tgt sunrpc binfmt_misc uinput joydev coretemp kvm_intel kvm microcode pcspkr serio_raw i2c_i801 lpc_ich mfd_core i5400_edac edac_core i5k_amb igb ptp pps_core ioatdma ixgbe dca mdio shpchp usb_storage floppy radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded: scsi_wait_scan] [ 285.552693] Pid: 1662, comm: avahi-daemon Not tainted 3.5.0-rc5+ #2 [ 285.552693] Call Trace: [ 285.552693] [<ffffffff81058ebf>] warn_slowpath_common+0x7f/0xc0 [ 285.552693] [<ffffffff81058f1a>] warn_slowpath_null+0x1a/0x20 [ 285.552693] [<ffffffff810618ba>] local_bh_enable+0x7a/0xa0 [ 285.552693] [<ffffffff815294e0>] ipv4_neigh_lookup+0xc0/0x130 [ 285.552693] [<ffffffffa04f0966>] ipoib_mcast_send+0x1b6/0x480 [ib_ipoib] [ 285.552693] [<ffffffff81093716>] ? update_sd_lb_stats+0x146/0x690 [ 285.552693] [<ffffffff814eb35b>] ? __alloc_skb+0x4b/0x170 [ 285.552693] [<ffffffffa04ec15d>] ipoib_path_lookup+0x11d/0x300 [ib_ipoib] [ 285.552693] [<ffffffff814eb35b>] ? __alloc_skb+0x4b/0x170 [ 285.552693] [<ffffffff814e7718>] ? sock_alloc_send_pskb+0x1d8/0x380 [ 285.552693] [<ffffffffa04ec97d>] ipoib_start_xmit+0x1ad/0x430 [ib_ipoib] [ 285.552693] [<ffffffff814fa64a>] dev_hard_start_xmit+0x24a/0x670 [ 285.552693] [<ffffffff8151790a>] sch_direct_xmit+0xfa/0x1d0 [ 285.552693] [<ffffffff814fabff>] dev_queue_xmit+0x18f/0x5e0 [ 285.552693] [<ffffffff81503667>] neigh_connected_output+0xc7/0x110 [ 285.552693] [<ffffffff81535c0d>] ip_finish_output+0x2ed/0x410 [ 285.552693] [<ffffffff81535ee9>] ip_mc_output+0x119/0x250 [ 285.552693] [<ffffffff81534fe9>] ip_local_out+0x29/0x30 [ 285.552693] [<ffffffff8153500b>] ip_send_skb+0x1b/0x50 [ 285.552693] [<ffffffff815598ad>] udp_send_skb+0x10d/0x3a0 [ 285.552693] [<ffffffff81534190>] ? ip_append_page+0x500/0x500 [ 285.552693] [<ffffffff8155ab9b>] udp_sendmsg+0x33b/0x970 [ 285.552693] [<ffffffff81080650>] ? update_rmtp+0x80/0x80 [ 285.552693] [<ffffffff81198011>] ? do_sys_poll+0x351/0x510 [ 285.552693] [<ffffffff81563a78>] inet_sendmsg+0x48/0xb0 [ 285.552693] [<ffffffff814e3398>] sock_sendmsg+0xf8/0x130 [ 285.552693] [<ffffffff81197330>] ? __pollwait+0xf0/0xf0 [ 285.552693] [<ffffffff81060707>] ? current_fs_time+0x27/0x30 [ 285.552693] [<ffffffff8119d3e1>] ? update_time+0x81/0xc0 [ 285.552693] [<ffffffff81197330>] ? __pollwait+0xf0/0xf0 [ 285.552693] [<ffffffff8119d469>] ? file_update_time+0x49/0xe0 [ 285.552693] [<ffffffff814e1e6e>] ? move_addr_to_kernel+0x4e/0x90 [ 285.552693] [<ffffffff814e1690>] ? copy_from_user+0x30/0x40 [ 285.552693] [<ffffffff814e4acd>] __sys_sendmsg+0x3fd/0x420 [ 285.552693] [<ffffffff81184aa2>] ? do_sync_write+0xe2/0x120 [ 285.552693] [<ffffffff811c1b05>] ? fsnotify+0x1d5/0x2f0 [ 285.552693] [<ffffffff814e4cf9>] sys_sendmsg+0x49/0x90 [ 285.552693] [<ffffffff81607da9>] system_call_fastpath+0x16/0x1b [ 285.552693] ---[ end trace cabd6aea7003ad6f ]--- ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: net-next warning at kernel/softirq.c:159 local_bh_enable 2012-07-06 3:20 net-next warning at kernel/softirq.c:159 local_bh_enable Or Gerlitz @ 2012-07-06 4:08 ` David Miller 2012-07-06 4:22 ` Or Gerlitz 2012-07-06 4:17 ` Or Gerlitz 1 sibling, 1 reply; 6+ messages in thread From: David Miller @ 2012-07-06 4:08 UTC (permalink / raw) To: ogerlitz; +Cc: netdev, shlomop From: Or Gerlitz <ogerlitz@mellanox.com> Date: Fri, 6 Jul 2012 06:20:58 +0300 > Shlomo saw too the ipv6 dst crash that was reported over > the list and also this warning when he rebased to net-next yesterday Here is what I commited to fix this: ==================== [PATCH] ipoib: Need to do dst_neigh_lookup_skb() outside of priv->lock. Otherwise local_bh_enable() complains. Reported-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net> --- drivers/infiniband/ulp/ipoib/ipoib_multicast.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c index fbb95ee..7cecb16 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c @@ -658,9 +658,15 @@ static int ipoib_mcast_leave(struct net_device *dev, struct ipoib_mcast *mcast) void ipoib_mcast_send(struct net_device *dev, void *mgid, struct sk_buff *skb) { struct ipoib_dev_priv *priv = netdev_priv(dev); + struct dst_entry *dst = skb_dst(skb); struct ipoib_mcast *mcast; + struct neighbour *n; unsigned long flags; + n = NULL; + if (dst) + n = dst_neigh_lookup_skb(dst, skb); + spin_lock_irqsave(&priv->lock, flags); if (!test_bit(IPOIB_FLAG_OPER_UP, &priv->flags) || @@ -715,12 +721,6 @@ void ipoib_mcast_send(struct net_device *dev, void *mgid, struct sk_buff *skb) out: if (mcast && mcast->ah) { - struct dst_entry *dst = skb_dst(skb); - struct neighbour *n = NULL; - - rcu_read_lock(); - if (dst) - n = dst_neigh_lookup_skb(dst, skb); if (n) { if (!*to_ipoib_neigh(n)) { struct ipoib_neigh *neigh; @@ -735,13 +735,14 @@ out: } neigh_release(n); } - rcu_read_unlock(); spin_unlock_irqrestore(&priv->lock, flags); ipoib_send(dev, skb, mcast->ah, IB_MULTICAST_QPN); return; } unlock: + if (n) + neigh_release(n); spin_unlock_irqrestore(&priv->lock, flags); } -- 1.7.10.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: net-next warning at kernel/softirq.c:159 local_bh_enable 2012-07-06 4:08 ` David Miller @ 2012-07-06 4:22 ` Or Gerlitz 0 siblings, 0 replies; 6+ messages in thread From: Or Gerlitz @ 2012-07-06 4:22 UTC (permalink / raw) To: David Miller; +Cc: ogerlitz, netdev, shlomop, Erez Shitrit > Here is what I commited to fix this: > > ==================== > [PATCH] ipoib: Need to do dst_neigh_lookup_skb() outside of priv->lock. > > Otherwise local_bh_enable() complains. sorry, I missed your note, I just pulled from kernel.org and it doesn't have the commit, will be able to test that later. Or. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: net-next warning at kernel/softirq.c:159 local_bh_enable 2012-07-06 3:20 net-next warning at kernel/softirq.c:159 local_bh_enable Or Gerlitz 2012-07-06 4:08 ` David Miller @ 2012-07-06 4:17 ` Or Gerlitz 2012-07-06 4:20 ` David Miller 1 sibling, 1 reply; 6+ messages in thread From: Or Gerlitz @ 2012-07-06 4:17 UTC (permalink / raw) To: David Miller; +Cc: netdev, Shlomo Pongratz FWIW - I've updated my net-next clone to the lastest and still see this, even after the IPv6 related fix. Or. IPv6: ADDRCONF(NETDEV_UP): ib0: link is not ready IPv6: ADDRCONF(NETDEV_CHANGE): ib0: link becomes ready ------------[ cut here ]------------ WARNING: at kernel/softirq.c:159 local_bh_enable+0x45/0xc2() Hardware name: X7DWU Modules linked in: ib_ipoib ib_cm ib_sa ib_uverbs netconsole nfs lockd auth_rpcgss nfs_acl autofs4 sunrpc fcoe libfcoe libfc scsi_transport_fc 8021q ipmi_devintf ipmi_si ipmi_msghandler ipv6 dm_mirror dm_region_hash dm_log uinput igb ptp pps_core mlx4_ib ib_mad ib_core mlx4_en mlx4_core sg kvm_intel kvm microcode pcspkr rng_core ioatdma dca dm_mod shpchp button sr_mod ext3 jbd usb_storage sd_mod ata_piix libata scsi_mod ehci_hcd uhci_hcd floppy [last unloaded: scsi_wait_scan] Pid: 0, comm: swapper/0 Not tainted 3.5.0-rc5-12501-g1405080-dirty #86 Call Trace: <IRQ> [<ffffffff81027f1d>] warn_slowpath_common+0x80/0x98 [<ffffffffa0245266>] ? ip6_neigh_lookup+0x157/0x187 [ipv6] [<ffffffff81027f4a>] warn_slowpath_null+0x15/0x17 [<ffffffff8102f56a>] local_bh_enable+0x45/0xc2 [<ffffffffa0245266>] ip6_neigh_lookup+0x157/0x187 [ipv6] [<ffffffffa0245168>] ? ip6_neigh_lookup+0x59/0x187 [ipv6] [<ffffffffa030895d>] ipoib_mcast_send+0x375/0x48b [ib_ipoib] [<ffffffffa0308908>] ? ipoib_mcast_send+0x320/0x48b [ib_ipoib] [<ffffffff8102f5e2>] ? local_bh_enable+0xbd/0xc2 [<ffffffffa030494f>] ipoib_path_lookup+0x2f3/0x331 [ib_ipoib] [<ffffffffa0245168>] ? ip6_neigh_lookup+0x59/0x187 [ipv6] [<ffffffffa0304b4d>] ipoib_start_xmit+0x1c0/0x54f [ib_ipoib] [<ffffffffa030498d>] ? ipoib_path_lookup+0x331/0x331 [ib_ipoib] [<ffffffff812c1be3>] dev_hard_start_xmit+0x449/0x60e [<ffffffff812c1804>] ? dev_hard_start_xmit+0x6a/0x60e [<ffffffff812d95b9>] sch_direct_xmit+0x72/0x201 [<ffffffff812c2221>] dev_queue_xmit+0x479/0x70e [<ffffffff812c1da8>] ? dev_hard_start_xmit+0x60e/0x60e [<ffffffff812ca20e>] neigh_connected_output+0xb6/0xd4 [<ffffffffa023c85b>] ip6_finish_output2+0x304/0x38e [ipv6] [<ffffffffa023c777>] ? ip6_finish_output2+0x220/0x38e [ipv6] [<ffffffffa0245057>] ? ip6_mtu+0x88/0xa1 [ipv6] [<ffffffffa023ca29>] ip6_finish_output+0x144/0x149 [ipv6] [<ffffffffa023cb41>] ip6_output+0x113/0x11c [ipv6] [<ffffffffa024c51f>] ndisc_send_skb+0x176/0x200 [ipv6] [<ffffffffa024c413>] ? ndisc_send_skb+0x6a/0x200 [ipv6] [<ffffffff81065350>] ? mark_held_locks+0xcd/0xf5 [<ffffffffa024ce1a>] __ndisc_send+0x51/0x5d [ipv6] [<ffffffffa024e4a0>] ndisc_send_ns+0x75/0x82 [ipv6] [<ffffffffa02413ee>] addrconf_dad_timer+0x118/0x136 [ipv6] [<ffffffff8103547a>] run_timer_softirq+0x27a/0x38b [<ffffffff810353b5>] ? run_timer_softirq+0x1b5/0x38b [<ffffffffa02412d6>] ? addrconf_rs_timer+0xf2/0xf2 [ipv6] [<ffffffff8102f746>] __do_softirq+0xff/0x1de [<ffffffff81362dcc>] call_softirq+0x1c/0x26 [<ffffffff81003090>] do_softirq+0x38/0x80 [<ffffffff8102f41f>] irq_exit+0x4e/0x83 [<ffffffff81019d2e>] smp_apic_timer_interrupt+0x86/0x94 [<ffffffff8136255c>] apic_timer_interrupt+0x6c/0x80 <EOI> [<ffffffff810083ec>] ? mwait_idle+0x13c/0x208 [<ffffffff810083e3>] ? mwait_idle+0x133/0x208 [<ffffffff810088d1>] cpu_idle+0x6e/0xab [<ffffffff81343a23>] rest_init+0xc7/0xce [<ffffffff8134395c>] ? csum_partial_copy_generic+0x16c/0x16c [<ffffffff8167fbf3>] start_kernel+0x332/0x33f [<ffffffff8167f6f6>] ? kernel_init+0x19d/0x19d [<ffffffff8167f2b4>] x86_64_start_reservations+0xb8/0xbd [<ffffffff8167f3a6>] x86_64_start_kernel+0xed/0xf4 ---[ end trace f71d7a59b646ab87 ]--- ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: net-next warning at kernel/softirq.c:159 local_bh_enable 2012-07-06 4:17 ` Or Gerlitz @ 2012-07-06 4:20 ` David Miller 2012-07-06 4:33 ` Or Gerlitz 0 siblings, 1 reply; 6+ messages in thread From: David Miller @ 2012-07-06 4:20 UTC (permalink / raw) To: ogerlitz; +Cc: netdev, shlomop From: Or Gerlitz <ogerlitz@mellanox.com> Date: Fri, 6 Jul 2012 07:17:33 +0300 > FWIW - I've updated my net-next clone to the lastest and still > see this, even after the IPv6 related fix. I sent you the infiniband patch necessary for this bug. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: net-next warning at kernel/softirq.c:159 local_bh_enable 2012-07-06 4:20 ` David Miller @ 2012-07-06 4:33 ` Or Gerlitz 0 siblings, 0 replies; 6+ messages in thread From: Or Gerlitz @ 2012-07-06 4:33 UTC (permalink / raw) To: David Miller; +Cc: ogerlitz, netdev, shlomop, Erez Shitrit On Fri, Jul 6, 2012 at 7:20 AM, David Miller <davem@davemloft.net> wrote: > I sent you the infiniband patch necessary for this bug. OK, tested with the patch, all is well, thanks! Or. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-07-06 4:33 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-07-06 3:20 net-next warning at kernel/softirq.c:159 local_bh_enable Or Gerlitz 2012-07-06 4:08 ` David Miller 2012-07-06 4:22 ` Or Gerlitz 2012-07-06 4:17 ` Or Gerlitz 2012-07-06 4:20 ` David Miller 2012-07-06 4:33 ` Or Gerlitz
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).