Bill Moran writes: > So the comment that I made that it was either a driver, NIC, or link-level > problem was near the mark? >
Seems to me that it is. I'd suspect a link level problem myself, based on the description of the problem. > I spent a while looking through the source to get a better idea of where that > error originates, and only got frustrated. As a favor, can you point me to > the area of the source from which I can learn more of this? > In -current things have changed, so I could now be wrong. Most of the drivers now return ENOBUFS if they really can't get an mbuf, but I haven't examined all the drivers to see under just which circumstances they return ENOBUFS. However, I was thinking of the macro IF_HANDOFF(), which uses if_handoff() which uses _IF_QFULL(), all of which are defined in /sys/net/if_var.h. _IF_QFULL() actually checks whether the send queue is full. IF_HANDOFF() is invoked (among other places) in /sys/net/netisr.c and /sys/net/if_ethersubr.c. I remember running into this situation while debugging ISDN drivers, many of which use IF_HANDOFF(). Most moden ethernet drivers don't seem to use it any more. --- Gary Jennejohn / garyj[at]jennejohn.org gj[at]freebsd.org gj[at]denx.de _______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"