Re: rev. 1.94 of netinet/in.c broke CARP



On Thu, Jan 25, 2007 at 08:40:52PM +0000, Robert Watson wrote:
R> Architecturally, the right fix is that CARP needs to have a handler for
R> ifnet destruction that always runs before the multicast address garbage
R> collection. I'm pretty preoccupied for the next few days due to an
R> impending paper deadline, so can't investigate further currently, but one
R> way or the other that ordering dependency needs to be expressed. If done
R> properly, CARP will always have released its multicast address before they
R> are forceably removed. Having the reference count is good too, but what I
R> describe should be sufficient regardless of the refcount.

This means removing usage of EVENTHANDLER(9) and going back to
exporting carp_ifdetach() and calling it directly from if_detach().
This is back out revision 1.255 of net/if.c. Not sure what is a right
way...

I am worried about that CARP is not the only subsystem in kernel
that can join a multicast group on an ifnet, and keep a pointer
to the multicast instance.

--
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE
_______________________________________________
freebsd-net@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscribe@xxxxxxxxxxx"



Relevant Pages