Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 May 2001 01:58:22 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        current@FreeBSD.org
Subject:   Re: panic in fxp driver
Message-ID:  <200105030158.SAA29983@usr09.primenet.com>

next in thread | raw e-mail | index | archive | help
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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200105030158.SAA29983>