From owner-cvs-all@FreeBSD.ORG Mon Nov 21 22:14:50 2005 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5E5A516A41F; Mon, 21 Nov 2005 22:14:50 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2B1E243D55; Mon, 21 Nov 2005 22:14:50 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jALMEnuo081587; Mon, 21 Nov 2005 22:14:50 GMT (envelope-from jhb@repoman.freebsd.org) Received: (from jhb@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jALMEn5x081586; Mon, 21 Nov 2005 22:14:49 GMT (envelope-from jhb) Message-Id: <200511212214.jALMEn5x081586@repoman.freebsd.org> From: John Baldwin Date: Mon, 21 Nov 2005 22:14:49 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/dev/nve if_nve.c if_nvereg.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Nov 2005 22:14:50 -0000 jhb 2005-11-21 22:14:49 UTC FreeBSD src repository Modified files: sys/dev/nve if_nve.c if_nvereg.h Log: Overhaul nve(4) locking to make it more like other ethernet drivers in the tree. - Add locked variants of nve_start(), nve_init(), and nve_ifmedia_upd(). - Use callout_* to manage callouts rather than timeout(9). - Mark interrupt handler MPSAFE (IFF_NEEDGIANT was already clear). - Lock the driver lock in driver entry points such as the interrupt handler, if_start, and if_init rather than locking the driver mutex in the various work functions called by the binary blob. The spin lock used by the binary block can probably be stubbed out now. - Use IFQ_DRV_IS_EMPTY() macro rather than doing it by hand. - Fix locking in detach. - Remove some unused fields from the softc. Tested by: cognet MFC after: 2 weeks Revision Changes Path 1.15 +110 -86 src/sys/dev/nve/if_nve.c 1.4 +3 -5 src/sys/dev/nve/if_nvereg.h