From owner-cvs-src-old@FreeBSD.ORG Thu Jan 7 00:04:54 2010 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 29CB910657B8 for ; Thu, 7 Jan 2010 00:04:54 +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 182768FC17 for ; Thu, 7 Jan 2010 00:04:54 +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 o0704rnV054987 for ; Thu, 7 Jan 2010 00:04:53 GMT (envelope-from yongari@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o0704rbL054986 for cvs-src-old@freebsd.org; Thu, 7 Jan 2010 00:04:53 GMT (envelope-from yongari@repoman.freebsd.org) Message-Id: <201001070004.o0704rbL054986@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to yongari@repoman.freebsd.org using -f From: Pyun YongHyeon Date: Thu, 7 Jan 2010 00:04:29 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: RELENG_7 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: Thu, 07 Jan 2010 00:04:54 -0000 yongari 2010-01-07 00:04:29 UTC FreeBSD src repository Modified files: (Branch: RELENG_7) sys/dev/bge if_bge.c if_bgereg.h Log: SVN rev 201699 on 2010-01-07 00:04:29Z by yongari MFC r199667-199668 r199667: Cache Rx producer/Tx consumer index as soon as we know status block update and then clear status block. Previously it used to access these index without synchronization which may cause problems when bounce buffers are used. Also add missing bus_dmamap_sync(9) in polling handler. Since we now update status block in driver, adjust bus_dmamap_sync(9) for status block. r199668: For MSI case, interrupt is not shared and we don't need to force PCI flush to get correct status block update. Add an optimized interrupt handler that is activated for MSI case. Actual interrupt handling is done by taskqueue such that the handler does not require driver lock for Rx path. The MSI capable bge(4) controllers automatically disables further interrupt once it enters interrupt state so we don't need PIO access to disable interrupt in interrupt handler. Revision Changes Path 1.198.2.27 +127 -26 src/sys/dev/bge/if_bge.c 1.73.2.13 +2 -0 src/sys/dev/bge/if_bgereg.h