From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jiri Pirko Subject: Re: netxen_nic: unregister_netdevice error Date: Tue, 31 May 2011 11:19:13 +0200 Message-ID: <20110531091912.GA2763@psychotron.brq.redhat.com> References: <4DE4877C.1070704@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "open list:NETWORKING [GENERAL]" To: WeipingPan Return-path: Received: from mx1.redhat.com ([209.132.183.28]:23404 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756233Ab1EaJTP (ORCPT ); Tue, 31 May 2011 05:19:15 -0400 Content-Disposition: inline In-Reply-To: <4DE4877C.1070704@gmail.com> Sender: netdev-owner@vger.kernel.org List-ID: So apparently this does not occur on 3.0.0-rc1 Tue, May 31, 2011 at 08:15:24AM CEST, panweiping3@gmail.com wrote: >hi, > >When test bonding broadcast mode I met a problem. >modprobe -r bonding will fail after I ping broadcast address. > >I find that the problem only shows up when I use netxen_nic driver. >When use ixgbe and bn2x2 driver, no problem occurs. > >I use RHEL 6.2, kernel 2.6.32-131.0.15.el6.i686, >Can anybody confirm this bug using 2.6.39 or upstream ? > >many thanks >Weiping Pan > > >The test script is followed. > >#test script start >#!/bin/bash > >NETWORK_CARD0=eth1 >NETWORK_CARD1=eth2 > > >function broadcast_test() >{ > modprobe bonding mode=broadcast miimon=100 > ifconfig bond0 192.168.8.2 netmask 255.255.255.0 up > ifconfig $NETWORK_CARD0 down > ifconfig $NETWORK_CARD1 down > echo +$NETWORK_CARD0 > /sys/class/net/bond0/bonding/slaves > echo +$NETWORK_CARD1 > /sys/class/net/bond0/bonding/slaves > ping 192.168.8.255 -b -c 10 > modprobe -r bonding >} > ># main >echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts >modprobe -r bonding > >for i in `seq 1 10` >do > echo "*******************" > echo "***iteration$i*****" > echo -e "*******************\n\n" > broadcast_test >done >#test script end > > >Some information is followed. >[root@hp-magnycours-01 ~]# uname -a >Linux hp-magnycours-01.rhts.eng.bos.redhat.com >2.6.32-131.0.15.el6.i686 #1 SMP Tue May 10 15:42:28 EDT 2011 i686 >i686 i386 GNU/Linux > >[root@hp-magnycours-01 ~]# cat /etc/redhat-release >Red Hat Enterprise Linux Server release 6.1 (Santiago) > >[root@hp-magnycours-01 ~]# lspci |grep Ethernet >04:00.0 Ethernet controller: NetXen Incorporated NX3031 Multifunction >1/10-Gigabit Server Adapter (rev 42) >04:00.1 Ethernet controller: NetXen Incorporated NX3031 Multifunction >1/10-Gigabit Server Adapter (rev 42) >04:00.2 Ethernet controller: NetXen Incorporated NX3031 Multifunction >1/10-Gigabit Server Adapter (rev 42) >04:00.3 Ethernet controller: NetXen Incorporated NX3031 Multifunction >1/10-Gigabit Server Adapter (rev 42) > >[root@hp-magnycours-01 ~]# lsmod |grep net >netxen_nic 83405 0 > >[root@hp-magnycours-01 ~]# ifconfig -a >eth0 Link encap:Ethernet HWaddr 1C:C1:DE:EE:28:F0 > inet addr:10.16.64.212 Bcast:10.16.71.255 Mask:255.255.248.0 > inet6 addr: fec0:0:a10:4000:1ec1:deff:feee:28f0/64 Scope:Site > inet6 addr: fe80::1ec1:deff:feee:28f0/64 Scope:Link > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > RX packets:13417 errors:0 dropped:0 overruns:0 frame:0 > TX packets:713 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:1110663 (1.0 MiB) TX bytes:90272 (88.1 KiB) > Interrupt:93 > >eth1 Link encap:Ethernet HWaddr 1C:C1:DE:EE:28:F1 > BROADCAST MULTICAST MTU:1500 Metric:1 > RX packets:0 errors:0 dropped:0 overruns:0 frame:0 > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) > Interrupt:97 > >eth2 Link encap:Ethernet HWaddr 1C:C1:DE:EE:28:F2 > BROADCAST MULTICAST MTU:1500 Metric:1 > RX packets:0 errors:0 dropped:0 overruns:0 frame:0 > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) > Interrupt:101 > >eth3 Link encap:Ethernet HWaddr 1C:C1:DE:EE:28:F3 > BROADCAST MULTICAST MTU:1500 Metric:1 > RX packets:0 errors:0 dropped:0 overruns:0 frame:0 > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) > Interrupt:105 > >lo Link encap:Local Loopback > inet addr:127.0.0.1 Mask:255.0.0.0 > inet6 addr: ::1/128 Scope:Host > UP LOOPBACK RUNNING MTU:16436 Metric:1 > RX packets:18 errors:0 dropped:0 overruns:0 frame:0 > TX packets:18 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:0 > RX bytes:10557 (10.3 KiB) TX bytes:10557 (10.3 KiB) > > >[root@hp-magnycours-01 ~]# ./test_bonding_broadcast.sh |tee log >******************* >***iteration1***** >******************* > > >WARNING: pinging broadcast address >PING 192.168.8.255 (192.168.8.255) 56(84) bytes of data. >64 bytes from 192.168.8.2: icmp_seq=1 ttl=64 time=0.041 ms >64 bytes from 192.168.8.2: icmp_seq=2 ttl=64 time=0.029 ms >64 bytes from 192.168.8.2: icmp_seq=3 ttl=64 time=0.027 ms >64 bytes from 192.168.8.2: icmp_seq=4 ttl=64 time=0.026 ms >64 bytes from 192.168.8.2: icmp_seq=5 ttl=64 time=0.030 ms >64 bytes from 192.168.8.2: icmp_seq=6 ttl=64 time=0.024 ms >64 bytes from 192.168.8.2: icmp_seq=7 ttl=64 time=0.024 ms >64 bytes from 192.168.8.2: icmp_seq=8 ttl=64 time=0.023 ms >64 bytes from 192.168.8.2: icmp_seq=9 ttl=64 time=0.024 ms >64 bytes from 192.168.8.2: icmp_seq=10 ttl=64 time=0.023 ms > >--- 192.168.8.255 ping statistics --- >10 packets transmitted, 10 received, 0% packet loss, time 9000ms >rtt min/avg/max/mdev = 0.023/0.027/0.041/0.005 ms > >Message from syslogd@hp-magnycours-01 at May 25 04:07:22 ... > kernel:unregister_netdevice: waiting for bond0 to become free. Usage >count = 1 > >Message from syslogd@hp-magnycours-01 at May 25 04:07:33 ... > kernel:unregister_netdevice: waiting for bond0 to become free. Usage >count = 1 > > >[root@hp-magnycours-01 ~]# dmesg >Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009) >bonding: MII link monitoring set to 100 ms >ADDRCONF(NETDEV_UP): bond0: link is not ready >bonding: bond0: Adding slave eth1. >bonding: bond0: enslaving eth1 as an active interface with a down link. >netxen_nic: eth1 NIC Link is up >bonding: bond0: Adding slave eth2. >bonding: bond0: enslaving eth2 as an active interface with a down link. >netxen_nic: eth2 NIC Link is up >bonding: bond0: link status definitely up for interface eth1. >bonding: bond0: link status definitely up for interface eth2. >ADDRCONF(NETDEV_CHANGE): bond0: link becomes ready >bond0: IPv6 duplicate address fe80::1ec1:deff:feee:28f1 detected! >bonding: bond0: released all slaves >unregister_netdevice: waiting for bond0 to become free. Usage count = 1 >unregister_netdevice: waiting for bond0 to become free. Usage count = 1 >unregister_netdevice: waiting for bond0 to become free. Usage count = 1 >unregister_netdevice: waiting for bond0 to become free. Usage count = 1 > >-- >To unsubscribe from this list: send the line "unsubscribe netdev" in >the body of a message to majordomo@vger.kernel.org >More majordomo info at http://vger.kernel.org/majordomo-info.html