From owner-cvs-src-old@FreeBSD.ORG Fri Jun 19 23:34:51 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 9AE3510657CA for ; Fri, 19 Jun 2009 23:34:51 +0000 (UTC) (envelope-from kmacy@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 69F1C8FC16 for ; Fri, 19 Jun 2009 23:34:51 +0000 (UTC) (envelope-from kmacy@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n5JNYpmm019466 for ; Fri, 19 Jun 2009 23:34:51 GMT (envelope-from kmacy@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n5JNYpTU019465 for cvs-src-old@freebsd.org; Fri, 19 Jun 2009 23:34:51 GMT (envelope-from kmacy@repoman.freebsd.org) Message-Id: <200906192334.n5JNYpTU019465@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to kmacy@repoman.freebsd.org using -f From: Kip Macy Date: Fri, 19 Jun 2009 23:34:32 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/conf files src/sys/dev/cxgb cxgb_adapter.h cxgb_main.c cxgb_multiq.c cxgb_osdep.h cxgb_sge.c src/sys/dev/cxgb/common cxgb_t3_cpl.h src/sys/dev/cxgb/sys cxgb_support.c mvec.h uipc_mvec.c src/sys/modules/cxgb/cxgb ... 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: Fri, 19 Jun 2009 23:34:51 -0000 kmacy 2009-06-19 23:34:32 UTC FreeBSD src repository Modified files: sys/conf files sys/dev/cxgb cxgb_adapter.h cxgb_main.c cxgb_osdep.h cxgb_sge.c sys/dev/cxgb/common cxgb_t3_cpl.h sys/dev/cxgb/sys mvec.h uipc_mvec.c sys/modules/cxgb/cxgb Makefile Removed files: sys/dev/cxgb cxgb_multiq.c sys/dev/cxgb/sys cxgb_support.c Log: SVN rev 194521 on 2009-06-19 23:34:32Z by kmacy Greatly simplify cxgb by removing almost all of the custom mbuf management logic - remove mbuf iovec - useful, but adds too much complexity when isolated to the driver - remove driver private caching - insufficient benefit over UMA to justify the added complexity and maintenance overhead - remove separate logic for managing multiple transmit queues, with the new drbr routines the control flow can be made to much more closely resemble legacy drivers - remove dedicated service threads, with per-cpu callouts one can get the same benefit much more simply by registering a callout 1 tick in the future if there are still buffered packets - remove embedded mbuf usage - Jeffr's changes will (I hope) soon be integrated greatly reducing the overhead of using kernel APIs for reference counting clusters - add hysteresis to descriptor coalescing logic - add coalesce threshold sysctls to allow users to decide at run-time between optimizing for forwarding / UDP or optimizing for TCP - add once per second watchdog to effectively close the very rare races occurring from coalescing - incorporate Navdeep's changes to the initialization path required to convert port and adapter locks back to ordinary mutexes (silencing BPF LOR complaints) - enable prefetches in get_packet and tx cleaning Reviewed by: navdeep@ MFC after: 2 weeks Revision Changes Path 1.1440 +0 -4 src/sys/conf/files 1.11 +15 -6 src/sys/dev/cxgb/common/cxgb_t3_cpl.h 1.46 +38 -81 src/sys/dev/cxgb/cxgb_adapter.h 1.89 +363 -316 src/sys/dev/cxgb/cxgb_main.c 1.20 +0 -594 src/sys/dev/cxgb/cxgb_multiq.c (dead) 1.31 +9 -12 src/sys/dev/cxgb/cxgb_osdep.h 1.73 +662 -555 src/sys/dev/cxgb/cxgb_sge.c 1.11 +0 -305 src/sys/dev/cxgb/sys/cxgb_support.c (dead) 1.17 +24 -282 src/sys/dev/cxgb/sys/mvec.h 1.32 +22 -311 src/sys/dev/cxgb/sys/uipc_mvec.c 1.14 +1 -1 src/sys/modules/cxgb/cxgb/Makefile