Re: unregister_netdevice() and igmpv3 trouble?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In message <OFF79C4263.91C48EE0-ON88256D5B.0025FE92@us.ibm.com>,David Stevens w
rites:
>But you didn't try reproducing the problem, apparently...

just tried.  still have the problem.  this is 2.5.74...

>Try it out. I predict it'll work, but I'm certainly interested in hearing
>if you have a test case that doesn't. :-)

the lane driver is very similar to a 'stupid' ethernet card.  it returns
all the multicast traffic.  the igmp stack seems to keep track of all the
learned groups, so i my network i typically see:

IPv6/IPv4 Group Memberships
Interface       RefCnt Group
--------------- ------ ---------------------
lo              1      224.0.0.1
lec0            1      224.0.1.1
lec0            1      224.0.0.1

so the learned address 224.0.1.1 is causing trouble on shutdown and 
removal of the network interface.  both ip_mc_down() and ip_mc_destroy_dev()
call igmp_group_dropped().  as stated before, igmp_group_dropped() 
will start the timers in an attempt to leave the multicast group.  looking
at igmp_group_dropped(), you can see someone fixed the dropping of the
ALL_HOSTS group, by simply testing for and ignoring it.  i dont know if a
host isnt allowed to issue a leave for the all hosts.  but a better test
might be to check to see if the underyling network device is IFF_UP before
continuing on with the drop operation.  igmp_group_dropped() really
cant do anything if the network interface isnt able to transmit.

also, i dont believe one would need to have a 'stupid' interface for the
above condition.  simply listen on a multicast address and try to 
ifdown and remove the active network interface.
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux