From owner-cvs-all Mon Aug 31 08:26:16 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id IAA04569 for cvs-all-outgoing; Mon, 31 Aug 1998 08:26:16 -0700 (PDT) (envelope-from owner-cvs-all) Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id IAA04564; Mon, 31 Aug 1998 08:26:15 -0700 (PDT) (envelope-from wpaul@FreeBSD.org) From: Bill Paul Received: (from wpaul@localhost) by freefall.freebsd.org (8.8.8/8.8.5) id IAA04858; Mon, 31 Aug 1998 08:26:10 -0700 (PDT) Date: Mon, 31 Aug 1998 08:26:10 -0700 (PDT) Message-Id: <199808311526.IAA04858@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: cvs commit: src/sys/pci if_xl.c Sender: owner-cvs-all@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk 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