From owner-freebsd-net@FreeBSD.ORG Mon Jan 31 17:49:23 2011 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 417A61065670; Mon, 31 Jan 2011 17:49:23 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id EEB5C8FC0C; Mon, 31 Jan 2011 17:49:22 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p0VHnIIA016792 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Mon, 31 Jan 2011 12:49:18 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D46F61B.5060907@sentex.net> Date: Mon, 31 Jan 2011 12:49:15 -0500 From: Mike Tancsa User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Julian Elischer References: <4D3011DB.9050900@frasunek.com> <20110131144223.GN62007@FreeBSD.org> <4D46D19A.7000508@frasunek.com> <4D46EA1E.4020000@freebsd.org> <4D46ECFD.2070700@freebsd.org> In-Reply-To: <4D46ECFD.2070700@freebsd.org> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: freebsd-net@freebsd.org, Alexander Motin , Przemyslaw Frasunek Subject: Re: Netgraph/mpd5 stability issues X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Jan 2011 17:49:23 -0000 On 1/31/2011 12:10 PM, Julian Elischer wrote: > On 1/31/11 8:58 AM, Julian Elischer wrote: >> On 1/31/11 7:13 AM, Przemyslaw Frasunek wrote: >>>> And in this one, can you please show *hook->hk_peer ? >>> (kgdb) print *hook->hk_peer >>> $2 = { >>> hk_name = "\b\000\000\000 >>> \000\000\000\004\000\000\000\001\000\000\000ŐRí\003\003ö\0248cmd4\000\000\000", >>> >>> hk_private = 0x0, hk_flags = 0, hk_refs = 0, >>> hk_type = 0, hk_peer = 0x0, hk_node = 0x0, hk_hooks = {le_next = >>> 0x566226, >>> le_prev = 0x99e79c03}, hk_rcvmsg = 0x38ef45, hk_rcvdata = >>> 0x28d6a8a1} >> >> that's not supposed to be able to happen. >> It's supposed to point to SOMETHING, even if it's the "dead" hook. >> does the dead hook point to itself? itprobably should if it doesn't. >> (and it should have a name of 'dead' if it doesn't already). > > Replying to self.. all these things are in fact true, (just looked at > source) so this is not a pointer > to the dead node. So, how do we get a NULL peer? > unless the hook is destroyed by another thread while we are accessing it, > but I think from memory that that should set it to 'dead' not NULL. If there is extra debugging code you would like me to add, it does not take too long for this to happen on my one LNS... 4-5 days. ---Mike