Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Jul 2003 08:57:29 +0800
From:      "David Xu" <davidxu@viatech.com.cn>
To:        "Julian Elischer" <julian@elischer.org>
Cc:        marcel@xcllnt.net
Subject:   Re: KSD/TSD take 2 (was: KSE critical regions)
Message-ID:  <001b01c35247$b8bd3870$f001a8c0@davidw2k>
References:  <Pine.BSF.4.21.0307241632290.71231-100000@InterJet.elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help

----- Original Message -----=20
From: "Julian Elischer" <julian@elischer.org>
To: "David Xu" <davidxu@freebsd.org>
Cc: <deischen@freebsd.org>; <threads@freebsd.org>; <marcel@xcllnt.net>
Sent: Friday, July 25, 2003 8:45 AM
Subject: Re: KSD/TSD take 2 (was: KSE critical regions)


>=20
>=20
> On Fri, 25 Jul 2003, David Xu wrote:
>=20
> >=20
> > >=20
> >=20
> > Dan has two fields in kse_mailbox:
> >=20
> > void      *km_ksdaddr;    /* KSE specific data address */
> > uint32_t  km_ksdsize;     /* KSE specific data size */
> >=20
> > I think it is used to tell kernel to map start address=20
> > of libkse's kse mailbox like above lib_kse_mailbox.
> >=20
> > > presently it requires special code to do the segments..
> > > (in teh library)
> > >=20
> > >=20
> > Did you make some progresses in this area ?
>=20
> It requires thatI rewrite the LDT code in WINE
> because wine just clobbers the LDT without looking to see if anyone =
else
> is using entries..
>=20
>=20
> My aim was to have a call i386_set_ldt that takes an addr and length
> and returns teh value that needs to be set into a segment register
> in order to access that segment (or error if no more segments
> available). Wine could use it from userland and kse_create could use =
it
> from inside the kernel to set up a segment that covers the mailbox.
> kse_create would set it into the %gs register of the newly created =
kse.
>
This sounds good to me.
=20
> having it done by by the library with the 'shotgun' code
> is probably good enough for now
>=20
>=20
OK.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?001b01c35247$b8bd3870$f001a8c0>