Date: Mon, 31 Aug 1998 08:26:10 -0700 (PDT) From: Bill Paul <wpaul@FreeBSD.ORG> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: cvs commit: src/sys/pci if_xl.c Message-ID: <199808311526.IAA04858@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
wpaul 1998/08/31 08:26:10 PDT Modified files: sys/pci if_xl.c Log: Fix handling of ENOBUFS condition. During reception, the filled mbuf cluster from the RX descriptor is passed up to the higher layers and replaced with an empty buffer for the next time the descriptor comes up in the RX ring. The xl_newbuf() routine returns ENOBUFS if it can't obtain a new mbuf cluster, but this return value was being ignored. Now, if buffer allocation fails, we leave the old one in place and drop the packet. This is rude, but there's not much else that can be done in this situation. Without this, the driver can cause a panic if the system runs out of MBUF clusters. Now it will complain loudly, but it shouldn't cause a panic. Also added another pair of missing newlines to some printf()s. Revision Changes Path 1.7 +27 -12 src/sys/pci/if_xl.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199808311526.IAA04858>