[Fwd: Panic: if_freemulti: protospec not NULL]
Bruce M. Simpson
bms at FreeBSD.org
Tue Mar 27 16:19:36 UTC 2007
Patch for this condition is attached.
This particular bug is irritating: the IPv4 stack joins 224.0.0.1 once
for every IPv4 unicast address configured in the stack. This is
incorrect behaviour. The implementation of refcounting has exposed this
bug. The fix is not particularly elegant.
It is most likely a left-over from the FreeBSD 2.x/3.x era when IPv4
'aliases' were first introduced. At that point in time the IGMP code in
FreeBSD would allow groups to be joined on a per-IPv4-address basis,
which is inconsistent with the IGMPv2/v3 specified behaviour (and indeed
that addressed in future multicast RFCs).
It seems that there are other situations where the stack is not
adequately equipped to deal with interfaces going away unexpectedly. We
can't afford to be complacent about multicast code on the basis of 'it's
not the critical path', because it is an integral component of IPv6, and
many ideas which people are trying to implement in IPv4 also require
that the multicast code is fit for purpose.
We would do well to have more people available to help on reviewing and
possibly rewriting parts of the network stack from a perspective of
correctness, not just performance. If this interests you please consider
signing up to the Wiki and updating the page at
http://wiki.freebsd.org/NetworkRFCCompliance.
Regards,
BMS
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ifa_detach.diff
Type: text/x-patch
Size: 4010 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20070327/b1d63641/ifa_detach.bin
-------------- next part --------------
An embedded message was scrubbed...
From: Andre Oppermann <andre at freebsd.org>
Subject: Panic: if_freemulti: protospec not NULL
Date: Tue, 27 Mar 2007 13:40:14 +0200
Size: 11119
Url: http://lists.freebsd.org/pipermail/freebsd-current/attachments/20070327/b1d63641/protospecnotNULL.eml
More information about the freebsd-current
mailing list