Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 1 Nov 1998 08:47:34 +1100 (EST)
From:      John Birrell  <jb@cimlogic.com.au>
To:        lists@tar.com
Cc:        jb@cimlogic.com.au, current@FreeBSD.ORG
Subject:   Re: Kernel threading (was Re: Thread Scheduler bug)
Message-ID:  <199810312147.IAA11039@cimlogic.com.au>
In-Reply-To: <199810312126.PAA23692@ns.tar.com> from "Richard Seaman, Jr." at "Oct 31, 98 03:26:50 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Richard Seaman, Jr. wrote:
> Agreed, sort of.  I don't use libc_r.  If you're going to implement
> deferred cancellation points, I think you still need to wrap some
> syscalls, so you still need to generate a separate libc somewhere.
> The "kernel" syscalls drop into libpthread, in a manner analagous
> to what happens in libc_r, but the wrappers are different, and the
> syscalls that are wrapped are different.

If you wrapper the syscalls, you get compatibility problems. If the
syscalls block in the kernel, then that's where thay should be cancelled.

> Well, the user-space knowledge of the running thread comes from pthread_self,
> which in the case I've implemented this comes from the code John Dyson
> provided to the list a while back.  errno codes are returned on the
> thread stack, if I understand his code.

Is that the user LDT implementation?

-- 
John Birrell - jb@cimlogic.com.au; jb@freebsd.org http://www.cimlogic.com.au/
CIMlogic Pty Ltd, GPO Box 117A, Melbourne Vic 3001, Australia +61 418 353 137

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810312147.IAA11039>