From owner-freebsd-arch@FreeBSD.ORG Thu Mar 27 08:46:43 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D2A7537B401 for ; Thu, 27 Mar 2003 08:46:43 -0800 (PST) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id 32CA543F75 for ; Thu, 27 Mar 2003 08:46:43 -0800 (PST) (envelope-from eischen@pcnet1.pcnet.com) Received: from pcnet1.pcnet.com (localhost [127.0.0.1]) by mail.pcnet.com (8.12.8/8.12.1) with ESMTP id h2RGkcBg027581; Thu, 27 Mar 2003 11:46:38 -0500 (EST) Received: from localhost (eischen@localhost)h2RGkcDZ027578; Thu, 27 Mar 2003 11:46:38 -0500 (EST) Date: Thu, 27 Mar 2003 11:46:38 -0500 (EST) From: Daniel Eischen To: Scott Long In-Reply-To: <3E8318B3.2020801@btc.adaptec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Spam-Status: No, hits=-25.3 required=5.0 tests=AWL,EMAIL_ATTRIBUTION,IN_REP_TO,QUOTED_EMAIL_TEXT, REPLY_WITH_QUOTES,USER_AGENT_PINE autolearn=ham version=2.50 X-Spam-Level: X-Spam-Checker-Version: SpamAssassin 2.50 (1.173-2003-02-20-exp) cc: arch@freebsd.org Subject: Re: 1:1 threading. X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Mar 2003 16:46:44 -0000 On Thu, 27 Mar 2003, Scott Long wrote: > Once 5-STABLE happens, users of 5.x can no longer be guinea pigs for KSE > development. By keeping the 1:1 and M:N API's separate, KSE can > progress in 6-CURRENT until it is proven while still allowing MFC's to > 5-STABLE to happen without too much pain. That's kind of silly; we have other ways to keep API/ABI compatability and have used this for all other syscalls. The KSE and thread mailboxes even have version numbers in them. > Later on down the road when > KSE matures, or when we decide that 1:1 should really just be a special > case of M:N, we can look at addressing the above concerns and possibly > MFC'ing the results back to 5-STABLE. But for now we need to allow for > 5-STABLE to actually be usable and maintainable. The libthr implementation of 1:1 is not what most consider 1:1 -- you don't get a separate quantum and priority for each thread. As such, this library is really no different than libkse. The only real difference is that the UTS chooses the next thread to run instead of the kernel. If you're going to add a bunch of code to both userland (in libthr) and the kernel just to get a working threading library, it seems much easier to just fix libkse so that it works for the single KSE/KSEG case. -- Dan Eischen