From owner-freebsd-net Tue Jan 30 3: 8:39 2001 Delivered-To: freebsd-net@freebsd.org Received: from urban.iinet.net.au (urban.iinet.net.au [203.59.24.231]) by hub.freebsd.org (Postfix) with ESMTP id 059DE37B503; Tue, 30 Jan 2001 03:08:19 -0800 (PST) Received: from muzak.iinet.net.au (muzak.iinet.net.au [203.59.24.237]) by urban.iinet.net.au (8.8.7/8.8.7) with ESMTP id TAA27123; Tue, 30 Jan 2001 19:08:17 +0800 Received: from elischer.org (reggae-02-2.nv.iinet.net.au [203.59.91.2]) by muzak.iinet.net.au (8.8.5/8.8.5) with ESMTP id TAA20722; Tue, 30 Jan 2001 19:05:58 +0800 Message-ID: <3A76A08E.8B5B3896@elischer.org> Date: Tue, 30 Jan 2001 03:07:58 -0800 From: Julian Elischer X-Mailer: Mozilla 4.7 [en] (X11; U; FreeBSD 5.0-CURRENT i386) X-Accept-Language: en, hu MIME-Version: 1.0 To: Harti Brandt Cc: julian@freebsd.org, freebsd-net@freebsd.org, archie@freebsd.org Subject: Re: netgraph: problem in ng_base References: Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: 7bit Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Harti Brandt wrote: > > Hi, > > Just a bit more information: I just tried to run my PDP-11 simulator > while having loaded ng_ether from the previous tests. The simulator uses > the if_tap interface to emulate an ethernet interface to the PDP. Suddenly > the system crashed while doing an ifconfig. The crash occured in > ng_ether_output, because the node pointer in the interface structure was > NULL. It checked the sources of if_tap and ng_ether, but could not find, > how this was caused. So I tried to repeat the crash, but no luck. The > trace from the crashdump shows: [...] > Frame #11 was ng_ether_output in ddb. > > But while trying to repeat the crash I suddenly discovered the following > in /var/log/messages: > > Jan 30 11:05:56 beagle /boot/kernel/kernel: Accessing freed node node: ID [3]: type 'ether', 0 hooks, flags 0x9, 0 refs, : > Jan 30 11:05:56 beagle /boot/kernel/kernel: Last active @ /usr/src/sys/modules/netgraph/netgraph/../../../netgraph/ng_base.c, line 2436 > Jan 30 11:05:56 beagle /boot/kernel/kernel: problem discovered at file /usr/src/sys/modules/netgraph/ether/../../../netgraph/ng_ether.c, line 341 > Jan 30 11:05:56 beagle /boot/kernel/kernel: Accessing freed node node: ID [3]: type 'ether', 0 hooks, flags 0x9, 0 refs, : > Jan 30 11:05:56 beagle /boot/kernel/kernel: Last active @ /usr/src/sys/modules/netgraph/ether/../../../netgraph/ng_ether.c, line 341 > Jan 30 11:05:56 beagle /boot/kernel/kernel: problem discovered at file /usr/src/sys/modules/netgraph/ether/../../../netgraph/ng_ether.c, line 344 > Jan 30 11:05:56 beagle /boot/kernel/kernel: Accessing freed node node: ID [3]: type 'ether', 0 hooks, flags 0x9, 0 refs, : > Jan 30 11:05:56 beagle /boot/kernel/kernel: Last active @ /usr/src/sys/modules/netgraph/ether/../../../netgraph/ng_ether.c, line 344 > Jan 30 11:05:56 beagle /boot/kernel/kernel: problem discovered at file /usr/src/sys/modules/netgraph/ether/../../../netgraph/ng_ether.c, line 345 > > That looks exactly like my problem, so I assume it is not the sscop code. > I think we'll find it's a problem with queueing and dequeueng packets.... I'm looking there now.... (queued packets are supposed to hold a reference to the node they are queued on, and that reference is supposed to be released when the packet is dequeued, but I have a suspicion that I screwed it and am releasing it twice.. Do you use NG_SEND_DATA_ONLY() in the atm node?? > harti -- __--_|\ Julian Elischer / \ julian@elischer.org ( OZ ) World tour 2000-2001 ---> X_.---._/ v To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message