From owner-freebsd-net@FreeBSD.ORG Mon Jan 31 09:49:29 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 94269106566C for ; Mon, 31 Jan 2011 09:49:29 +0000 (UTC) (envelope-from egrosbein@rdtc.ru) Received: from eg.sd.rdtc.ru (eg.sd.rdtc.ru [62.231.161.221]) by mx1.freebsd.org (Postfix) with ESMTP id C86718FC08 for ; Mon, 31 Jan 2011 09:49:28 +0000 (UTC) Received: from eg.sd.rdtc.ru (localhost [127.0.0.1]) by eg.sd.rdtc.ru (8.14.4/8.14.4) with ESMTP id p0V9nPKW049602; Mon, 31 Jan 2011 15:49:26 +0600 (NOVT) (envelope-from egrosbein@rdtc.ru) Message-ID: <4D4685A0.6040400@rdtc.ru> Date: Mon, 31 Jan 2011 15:49:20 +0600 From: Eugene Grosbein User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; ru-RU; rv:1.9.2.13) Gecko/20110112 Thunderbird/3.1.7 MIME-Version: 1.0 To: Julian Elischer References: <4D3011DB.9050900@frasunek.com> <4D30458D.30007@sentex.net> <4D309983.70709@rdtc.ru> <201101141437.55421.jhb@freebsd.org> <4D46575A.802@rdtc.ru> <4D4670C2.4050500@freebsd.org> In-Reply-To: <4D4670C2.4050500@freebsd.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: freebsd-net@freebsd.org Subject: Re: panic: bufwrite: buffer is not busy??? 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 09:49:29 -0000 On 31.01.2011 14:20, Julian Elischer wrote: >> # gdb kernel >> GNU gdb 6.1.1 [FreeBSD] >> Copyright 2004 Free Software Foundation, Inc. >> GDB is free software, covered by the GNU General Public License, and you are >> welcome to change it and/or distribute copies of it under certain conditions. >> Type "show copying" to see the conditions. >> There is absolutely no warranty for GDB. Type "show warranty" for details. >> This GDB was configured as "amd64-marcel-freebsd"... >> (gdb) l *0xffffffff803c1315 >> 0xffffffff803c1315 is in ng_address_hook (/home/src/sys/netgraph/ng_base.c:3504). >> 3499 * Quick sanity check.. >> 3500 * Since a hook holds a reference on it's node, once we know >> 3501 * that the peer is still connected (even if invalid,) we know >> 3502 * that the peer node is present, though maybe invalid. >> 3503 */ >> 3504 if ((hook == NULL) || >> 3505 NG_HOOK_NOT_VALID(hook) || >> 3506 NG_HOOK_NOT_VALID(peer = NG_HOOK_PEER(hook)) || >> 3507 NG_NODE_NOT_VALID(peernode = NG_PEER_NODE(hook))) { >> 3508 NG_FREE_ITEM(item); > > > replace with: > > 3504 if ((hook == NULL) || > 3505 NG_HOOK_NOT_VALID(hook) || > ((peer = NG_HOOK_PEER(hook)) == NULL) || > 3506 NG_HOOK_NOT_VALID(peer) || > ((peernode = NG_PEER_NODE(hook)) == NULL) || > 3507 NG_NODE_NOT_VALID(peernode)) { > if (peer) > kassert((peernode != NULL), ("peer node NULL wile peer hook exists")); > 3508 NG_FREE_ITEM(item); > It does not compile: /home/src/sys/netgraph/ng_base.c: In function 'ng_address_hook': /home/src/sys/netgraph/ng_base.c:3511: warning: implicit declaration of function 'kassert' /home/src/sys/netgraph/ng_base.c:3511: warning: nested extern declaration of 'kassert' *** Error code 1 1 error *** Error code 2 1 error *** Error code 2 1 error