From owner-freebsd-net@FreeBSD.ORG Thu Sep 28 00:27:05 2006 Return-Path: X-Original-To: net@FreeBSD.org Delivered-To: freebsd-net@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 25A0E16A417; Thu, 28 Sep 2006 00:27:05 +0000 (UTC) (envelope-from davidch@broadcom.com) Received: from MMS3.broadcom.com (mms3.broadcom.com [216.31.210.19]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9F14143D46; Thu, 28 Sep 2006 00:27:04 +0000 (GMT) (envelope-from davidch@broadcom.com) Received: from 10.10.64.154 by MMS3.broadcom.com with ESMTP (Broadcom SMTP Relay (Email Firewall v6.2.2)); Wed, 27 Sep 2006 17:26:38 -0700 X-Server-Uuid: 450F6D01-B290-425C-84F8-E170B39A25C9 Received: by mail-irva-10.broadcom.com (Postfix, from userid 47) id 242E22AE; Wed, 27 Sep 2006 17:26:38 -0700 (PDT) Received: from mail-irva-8.broadcom.com (mail-irva-8 [10.10.64.221]) by mail-irva-10.broadcom.com (Postfix) with ESMTP id DAFDC2AF; Wed, 27 Sep 2006 17:26:37 -0700 (PDT) Received: from mail-irva-12.broadcom.com (mail-irva-12.broadcom.com [10.10.64.146]) by mail-irva-8.broadcom.com (MOS 3.7.5a-GA) with ESMTP id EGA54914; Wed, 27 Sep 2006 17:26:37 -0700 (PDT) Received: from NT-IRVA-0750.brcm.ad.broadcom.com (nt-irva-0750 [10.8.194.64]) by mail-irva-12.broadcom.com (Postfix) with ESMTP id 3885869CA3; Wed, 27 Sep 2006 17:26:37 -0700 (PDT) X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Date: Wed, 27 Sep 2006 17:26:35 -0700 Message-ID: <09BFF2FA5EAB4A45B6655E151BBDD90302084F5F@NT-IRVA-0750.brcm.ad.broadcom.com> In-Reply-To: <20060927131814.GK59833@FreeBSD.org> Thread-Topic: bge(4) one packet wedge Thread-Index: AcbiN3BMYynPLuh4TCyfqr6SkXgbMgAXIdig From: "David Christensen" To: "Gleb Smirnoff" X-TMWD-Spam-Summary: TS=20060928002643; SEV=2.0.2; DFV=A2006092710; IFV=2.0.4,4.0-8; RPD=4.00.0004; ENG=IBF; RPDID=303030312E30413031303230352E34353142313441322E303031442D412D; CAT=NONE; CON=NONE X-MMS-Spam-Filter-ID: A2006092710_4.00.0004_4.0-8 X-WSS-ID: 6905C9342304624691-01-01 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Cc: brad@openbsd.org, oleg@FreeBSD.org, net@FreeBSD.org Subject: RE: bge(4) one packet wedge 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: Thu, 28 Sep 2006 00:27:05 -0000 > Finally I got a NIC that has a chip that does tagged status=20 > block - 5701. >=20 > I've prepared a patch, that mimics Linux. If a chip can do status tag, > then we write it to mailbox register at end of ISR, as you have > described. If the chip can't, then we force coalescing once=20 > per second. > This should fix the problem correctly on the chips that support > status tag, and it is an ugly fix for chips that does not. >=20 > Unfortunately, the attached patch doesn't fix the problem on 5701. The > wedge occurs as before. And I see status tag updated, while=20 > the netperf > test has wedged: >=20 > (kgdb) p $sc->bge_last_tag > $45 =3D 239 > (kgdb) p $sc->bge_last_tag > $46 =3D 240 > (kgdb) p $sc->bge_last_tag > $47 =3D 241 > (kgdb) p $sc->bge_last_tag > $48 =3D 242 >=20 > I have no idea. :( May be you have one? What's happening to the status block consumer/producer indices at this time? Are they advancing? Do they match the driver maintained consumer/producer indices? I forget if this was a send or receive problem, is the packet sitting in the send or receive return ring? Dave