From owner-freebsd-amd64@FreeBSD.ORG Wed Jan 10 02:42:49 2007 Return-Path: X-Original-To: freebsd-amd64@freebsd.org Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3B3FD16A517; Wed, 10 Jan 2007 02:42:49 +0000 (UTC) (envelope-from bde@zeta.org.au) Received: from mailout1.pacific.net.au (mailout1-3.pacific.net.au [61.8.2.210]) by mx1.freebsd.org (Postfix) with ESMTP id 0206913C4C9; Wed, 10 Jan 2007 02:42:49 +0000 (UTC) (envelope-from bde@zeta.org.au) Received: from mailproxy2.pacific.net.au (mailproxy2.pacific.net.au [61.8.2.163]) by mailout1.pacific.net.au (Postfix) with ESMTP id BC25E3282F3; Wed, 10 Jan 2007 13:42:47 +1100 (EST) Received: from besplex.bde.org (katana.zip.com.au [61.8.7.246]) by mailproxy2.pacific.net.au (Postfix) with ESMTP id 9B79E2741B; Wed, 10 Jan 2007 13:42:46 +1100 (EST) Date: Wed, 10 Jan 2007 13:42:45 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: John Baldwin In-Reply-To: <200701091150.15274.jhb@freebsd.org> Message-ID: <20070110132839.X16378@besplex.bde.org> References: <1168211205.22629.6.camel@lanshark.dmv.com> <20070109124826.M79616@delplex.bde.org> <1168353425.29047.8.camel@lanshark.dmv.com> <200701091150.15274.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: stable@freebsd.org, freebsd-amd64@freebsd.org Subject: Re: Panic in 6.2-PRERELEASE with bge on amd64 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jan 2007 02:42:49 -0000 On Tue, 9 Jan 2007, John Baldwin wrote: > On Tuesday 09 January 2007 09:37, Sven Willenberger wrote: >> On Tue, 2007-01-09 at 12:50 +1100, Bruce Evans wrote: >>> Oops. I should have asked for the statment in bge_rxeof(). >> >> #7 0xffffffff801d5f17 in bge_rxeof (sc=0xffffffff8836b000) > at /usr/src/sys/dev/bge/if_bge.c:2528 >> 2528 m->m_pkthdr.len = m->m_len = cur_rx->bge_len - > ETHER_CRC_LEN; >> >> (where m is defined as: >> 2449 struct mbuf *m = NULL; >> ) > > It's assigned earlier in between those two places. Its initialization here is just a style bug. > Can you 'p rxidx' as well > as 'p sc->bge_cdata.bge_rx_std_chain[rxidx]' and 'p > sc->bge_cdata.bge_rx_jumbo_chain[rxidx]'? Also, are you using jumbo frames > at all? Also look at nearby chain entries (especially at (rxidx - 1) mod 512)). I think the previous 255 entries and the rxidx one should be non-NULL since we should have refilled them as we used them (so the one at rxidx is least interesting since we certainly just refilled it), and the next 256 entries should be NULL since we bogusly only use half of the entries. If the problem is uninitialization, then I expect all 512 entries except the one just refilled at rxidx to be NULL. Bruce