No subject

Unknown Unknown
Mon Jan 15 12:51:07 PST 2007


504 at fs.ei.tum.de> <45A08F10.4030004 at exemail.com.au> <45A81D54.5040909 at exemail.com.au> <002701c736a8$72084a20$1200a8c0 at gsicomp.on.ca> <45A82676.1000204 at fs.ei.tum.de> <007301c736ac$5c99da10$1200a8c0 at gsicomp.on.ca> <45A838AA.9030008 at fs.ei.tum.de> <200701130306.l0D36JX8007342 at apollo.backplane.com> <45A87472.3040108 at fs.ei.tum.de> <45A879FF.8060407 at exemail.com.au> <200701130649.l0D6nE8j008759 at apollo. backplane.com> <009301c73746$cdce3470$1200a8c0 at gsicomp.on.ca> <200701132000.l0DK0QsA020885 at ap
 ollo.backplane.com>
From: "Matt Emmerton" <matt at gsicomp.on.ca>
Subject: Re: Request for swapcontext and getcontext to be ported to our libc [ revision 3 ]
Date: Mon, 15 Jan 2007 15:43:51 -0500
BestServHost: crater.dragonflybsd.org
List-Post: <mailto:users at crater.dragonflybsd.org>
List-Subscribe: <mailto:users-request at crater.dragonflybsd.org?body=subscribe>
List-Unsubscribe: <mailto:users-request at crater.dragonflybsd.org?body=unsubscribe>
List-Help: <mailto:users-request at crater.dragonflybsd.org?body=help>
List-Owner: <mailto:owner-users at crater.dragonflybsd.org>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Sender: users-errors at crater.dragonflybsd.org
Errors-To: users-errors at crater.dragonflybsd.org
Lines: 32
NNTP-Posting-Host: 216.240.41.25
X-Trace: 1168894489 crater_reader.dragonflybsd.org 830 216.240.41.25
Xref: crater_reader.dragonflybsd.org dragonfly.users:8620

> :I agree with the assessment.  Last night I moved all the requisite bits
from
> :kernel-space into libc, with the exception of the low-level
> :[get|set]_mcontext routines.  (My Intel assembly knowledge is very
limited,
> :especially for anything after the 8086, so I could use some help to write
> :this code.)  I'm almost done the syscall work to get/set the signal mask
and
> :pending signal mask, so should have something up on the web before the
end
> :of the afternoon (EST) for review.
> :--
> :Matt Emmerton
>
>     I can do that bit.  If you post the bits you have I can supply and
>     test the low level switch code.
>
> -Matt
> Matthew Dillon

A first cut of the libc-based implementation, using a (new) syscall to
get/set the signal its is available, and can be found here:
http://www.gsicomp.on.ca/~matt/dfly/ (rev3, bottom of page)

Note that this implementation is not complete, as it is missing the userland
get/set_mcontext code.  I'm sure I've also missed some nuance wrt signal
handling (locking, ordering, etc) in the design and use of the new sigmask
syscall.

--
Matt Emmerton






More information about the Users mailing list