From owner-cvs-all@FreeBSD.ORG Fri Jul 2 00:41:01 2004 Return-Path: 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 3A59F16A4CE; Fri, 2 Jul 2004 00:41:01 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3430F43D41; Fri, 2 Jul 2004 00:41:01 +0000 (GMT) (envelope-from marcel@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i620e8SJ001745; Fri, 2 Jul 2004 00:40:08 GMT (envelope-from marcel@repoman.freebsd.org) Received: (from marcel@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i620e81D001744; Fri, 2 Jul 2004 00:40:08 GMT (envelope-from marcel) Message-Id: <200407020040.i620e81D001744@repoman.freebsd.org> From: Marcel Moolenaar Date: Fri, 2 Jul 2004 00:40:08 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern kern_thr.c kern_umtx.c src/sys/sys thr.h umtx.h src/lib/libthr/thread thr_cond.c thr_create.c thr_mutex.c thr_private.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 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: Fri, 02 Jul 2004 00:41:01 -0000 marcel 2004-07-02 00:40:08 UTC FreeBSD src repository Modified files: sys/kern kern_thr.c kern_umtx.c sys/sys thr.h umtx.h lib/libthr/thread thr_cond.c thr_create.c thr_mutex.c thr_private.h Log: Change the thread ID (thr_id_t) used for 1:1 threading from being a pointer to the corresponding struct thread to the thread ID (lwpid_t) assigned to that thread. The primary reason for this change is that libthr now internally uses the same ID as the debugger and the kernel when referencing to a kernel thread. This allows us to implement the support for debugging without additional translations and/or mappings. To preserve the ABI, the 1:1 threading syscalls, including the umtx locking API have not been changed to work on a lwpid_t. Instead the 1:1 threading syscalls operate on long and the umtx locking API has not been changed except for the contested bit. Previously this was the least significant bit. Now it's the most significant bit. Since the contested bit should not be tested by userland, this change is not expected to be visible. Just to be sure, UMTX_CONTESTED has been removed from . Reviewed by: mtm@ ABI preservation tested on: i386, ia64 Revision Changes Path 1.15 +4 -4 src/lib/libthr/thread/thr_cond.c 1.17 +0 -9 src/lib/libthr/thread/thr_create.c 1.29 +4 -4 src/lib/libthr/thread/thr_mutex.c 1.38 +1 -2 src/lib/libthr/thread/thr_private.h 1.21 +16 -13 src/sys/kern/kern_thr.c 1.15 +5 -3 src/sys/kern/kern_umtx.c 1.3 +4 -9 src/sys/sys/thr.h 1.4 +10 -11 src/sys/sys/umtx.h