From owner-cvs-src-old@FreeBSD.ORG Mon Jan 4 05:28:34 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 B65C1106566C for ; Mon, 4 Jan 2010 05:28:34 +0000 (UTC) (envelope-from davidxu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id A310B8FC15 for ; Mon, 4 Jan 2010 05:28:34 +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 o045SYhk012403 for ; Mon, 4 Jan 2010 05:28:34 GMT (envelope-from davidxu@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o045SYOC012402 for cvs-src-old@freebsd.org; Mon, 4 Jan 2010 05:28:34 GMT (envelope-from davidxu@repoman.freebsd.org) Message-Id: <201001040528.o045SYOC012402@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to davidxu@repoman.freebsd.org using -f From: David Xu Date: Mon, 4 Jan 2010 05:27:49 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern kern_umtx.c src/sys/sys _umtx.h umtx.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: Mon, 04 Jan 2010 05:28:34 -0000 davidxu 2010-01-04 05:27:49 UTC FreeBSD src repository Modified files: sys/kern kern_umtx.c sys/sys umtx.h Added files: sys/sys _umtx.h Log: SVN rev 201472 on 2010-01-04 05:27:49Z by davidxu Add user-level semaphore synchronous type, this change allows multiple processes to share semaphore by using shared memory area, in simplest case, only one atomic operation is needed in userland, waiter flag is maintained by kernel and userland only checks the flag, if the flag is set, user code enters kernel and does a wakeup() call. Move type definitions into file _umtx.h to minimize compiling time. Also type names need to be prefixed with underline character, this would reduce name conflict (still in progress). Revision Changes Path 1.75 +160 -2 src/sys/kern/kern_umtx.c 1.1 +66 -0 src/sys/sys/_umtx.h (new) 1.34 +12 -36 src/sys/sys/umtx.h