From owner-freebsd-current@FreeBSD.ORG Sat May 30 02:26:14 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 47B031065670 for ; Sat, 30 May 2009 02:26:14 +0000 (UTC) (envelope-from bms@incunabulum.net) Received: from out1.smtp.messagingengine.com (out1.smtp.messagingengine.com [66.111.4.25]) by mx1.freebsd.org (Postfix) with ESMTP id 19A3B8FC08 for ; Sat, 30 May 2009 02:26:14 +0000 (UTC) (envelope-from bms@incunabulum.net) Received: from compute1.internal (compute1.internal [10.202.2.41]) by out1.messagingengine.com (Postfix) with ESMTP id 30533346927; Fri, 29 May 2009 22:26:13 -0400 (EDT) Received: from heartbeat1.messagingengine.com ([10.202.2.160]) by compute1.internal (MEProxy); Fri, 29 May 2009 22:26:13 -0400 X-Sasl-enc: hiq8nmr1iVppXU7pW7ZiYNKH6bG3AH3mdPIBpypp/QiA 1243650372 Received: from [192.168.123.18] (82-35-112-254.cable.ubr07.dals.blueyonder.co.uk [82.35.112.254]) by mail.messagingengine.com (Postfix) with ESMTPSA id 792DB2D154; Fri, 29 May 2009 22:26:12 -0400 (EDT) Message-ID: <4A209941.2060509@incunabulum.net> Date: Sat, 30 May 2009 03:26:09 +0100 From: Bruce Simpson User-Agent: Thunderbird 2.0.0.21 (Windows/20090302) MIME-Version: 1.0 To: deeptech71@gmail.com References: <4A1DD57A.7010704@gmail.com> <4A1E9831.4010606@incunabulum.net> <4A1EC8FB.6090206@gmail.com> <4A1FBFF5.6090103@incunabulum.net> <4A20791D.5070209@gmail.com> In-Reply-To: <4A20791D.5070209@gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-current@freebsd.org Subject: Re: panic: igmp_v3_dispatch_general_query: called when version 2 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 May 2009 02:26:14 -0000 deeptech71@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