panic: igmp_v3_dispatch_general_query: called when version 2
Bruce Simpson
bms at incunabulum.net
Sat May 30 02:26:14 UTC 2009
deeptech71 at gmail.com wrote:
> ...
> Heh. How does that relate to the kernel code assigning a v3 handler to
> a v2 packet? (Looks something like that to me.)
There is a potential race in the treatment of how older querier
compatibility is implemented, and it is to do with the treatment of the
link timers.
I caught this in the MLDv2 respin. It would seem that the panic you saw
can be attributed to this. It didn't help that the RFC was not
especially clear on when to transition back to v1 in the presence of a
v1 querier -- so I'm assuming that to be compliant with MLDv2, this
happens only when the 'Older Querier Present' timer expires, and not
before. Same goes for IGMPv3 viz IGMPv2.
I nearly had a fix for the issue this afternoon, but have been
distracted due to meetings and other commitments. I'll try to get a fix
out in the next few days.
Of course, one of my hopes for this project was that automated
regression testing of new net* code could be pushed into the tree, and
this would have caught the problem you saw -- but because of the 8.x
serial port regression, I wasn't able to rely on the automated
regression test.
thanks,
BMS
More information about the freebsd-current
mailing list