From owner-cvs-src-old@FreeBSD.ORG Sat Nov 7 01:01:52 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C67371065676 for ; Sat, 7 Nov 2009 01:01:52 +0000 (UTC) (envelope-from yongari@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id B49248FC12 for ; Sat, 7 Nov 2009 01:01:52 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id nA711qqB008797 for ; Sat, 7 Nov 2009 01:01:52 GMT (envelope-from yongari@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id nA711qxm008796 for cvs-src-old@freebsd.org; Sat, 7 Nov 2009 01:01:52 GMT (envelope-from yongari@repoman.freebsd.org) Message-Id: <200911070101.nA711qxm008796@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to yongari@repoman.freebsd.org using -f From: Pyun YongHyeon Date: Sat, 7 Nov 2009 01:01:33 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/dev/bge if_bge.c if_bgereg.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Nov 2009 01:01:52 -0000 yongari 2009-11-07 01:01:33 UTC FreeBSD src repository Modified files: sys/dev/bge if_bge.c if_bgereg.h Log: SVN rev 199011 on 2009-11-07 01:01:33Z by yongari Reimplement Rx buffer allocation to handle dma map load failure. Introduce two spare dma maps for standard buffer and jumbo buffer respectively. If loading a dma map failed reuse previously loaded dma map. This should fix unloaded dma map is used in case of dma map load failure. Also don't blindly unload dma map and defer dma map sync and unloading operation until we know dma map for new buffer is successfully loaded. This change saves unnecessary dma load/unload operation. Previously bge(4) tried to reuse mbuf with unloaded dma map which is really bad thing in bus_dma(9) perspective. While I'm here update if_iqdrops if we can't allocate Rx buffers. Revision Changes Path 1.237 +86 -80 src/sys/dev/bge/if_bge.c 1.89 +2 -0 src/sys/dev/bge/if_bgereg.h