From owner-freebsd-current Sun Nov 1 11:23:08 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id LAA20679 for freebsd-current-outgoing; Sun, 1 Nov 1998 11:23:08 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from narnia.plutotech.com (narnia.plutotech.com [206.168.67.130]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id LAA20672 for ; Sun, 1 Nov 1998 11:23:07 -0800 (PST) (envelope-from gibbs@narnia.plutotech.com) Received: (from gibbs@localhost) by narnia.plutotech.com (8.9.1/8.7.3) id MAA08880; Sun, 1 Nov 1998 12:16:00 -0700 (MST) Date: Sun, 1 Nov 1998 12:16:00 -0700 (MST) From: "Justin T. Gibbs" Message-Id: <199811011916.MAA08880@narnia.plutotech.com> To: Peter Wemm cc: current@FreeBSD.ORG Subject: Re: Kernel threading (was Re: Thread Scheduler bug) X-Newsgroups: pluto.freebsd.current In-Reply-To: <199811011622.AAA25247@spinner.netplex.com.au> User-Agent: tin/pre-1.4-980818 ("Laura") (UNIX) (FreeBSD/3.0-BETA (i386)) Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG In article <199811011622.AAA25247@spinner.netplex.com.au> you wrote: > > You need a kernel stack per thread in the lightweight model, up to a limit > of the number of cpus running, because it's needed for each possibly > active thread to make a syscall. I don't see how you can achieve such a limited number of stacks without a thread continuation model. If a thread calls tsleep while in kernel context, where does it's kernel stack go? If you always restart the thread from a thread continuation point, you can throw its stack away. This is certainly very desirable, but the impact on the kernel would be extremely large. -- Justin To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message