From owner-freebsd-current Wed May 2 18:57:37 2001 Delivered-To: freebsd-current@freebsd.org Received: from smtp10.phx.gblx.net (smtp10.phx.gblx.net [206.165.6.140]) by hub.freebsd.org (Postfix) with ESMTP id 0FFD837B423 for ; Wed, 2 May 2001 18:57:34 -0700 (PDT) (envelope-from tlambert@usr09.primenet.com) Received: (from daemon@localhost) by smtp10.phx.gblx.net (8.9.3/8.9.3) id SAA40120 for ; Wed, 2 May 2001 18:57:32 -0700 Received: from usr09.primenet.com(206.165.6.209) via SMTP by smtp10.phx.gblx.net, id smtpdt5Fsqa; Wed May 2 18:57:30 2001 Received: (from tlambert@localhost) by usr09.primenet.com (8.8.5/8.8.5) id SAA29983 for current@FreeBSD.org; Wed, 2 May 2001 18:58:22 -0700 (MST) From: Terry Lambert Message-Id: <200105030158.SAA29983@usr09.primenet.com> Subject: Re: panic in fxp driver To: current@FreeBSD.org Date: Thu, 3 May 2001 01:58:22 +0000 (GMT) X-Mailer: ELM [version 2.5 PL2] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG The fxp driver is broken in a lot of places. For example, in fxp_intr(): for (txp = sc->cbl_first; sc->tx_queued && (txp->cb_status & FXP_CB_STATUS_C) != 0; txp = txp->next) { if (txp->mb_head != NULL) { m_freem(txp->mb_head); txp->mb_head = NULL; } sc->tx_queued--; } ...notice the "for" loop doesn't check to see if "txp = txp->next" ends up being NULL? You can get this, if you put your system under extreme load. If you can repeat the problem with another card, it's a real problem, otherwise it's probably just FXP driver brain damage... Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message