Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Oct 2007 05:20:36 +0300
From:      Mihai =?utf-8?q?Don=C8=9Bu?= <mihai.dontu@gmail.com>
To:        Tijl Coosemans <tijl@ulyssis.org>
Cc:        freebsd-emulation@freebsd.org, freebsd-questions@freebsd.org, Jung-uk Kim <jkim@freebsd.org>
Subject:   Re: amd64_set_gsbase()
Message-ID:  <200710220520.37085.mihai.dontu@gmail.com>
In-Reply-To: <200710101533.06287.tijl@ulyssis.org>
References:  <200710082135.58099.mihai.dontu@gmail.com> <200710090348.52036.mihai.dontu@gmail.com> <200710101533.06287.tijl@ulyssis.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 10 October 2007, Tijl Coosemans wrote:
> > To get back to what you are trying to do, because %gs isn't preserved,
> > I think you should avoid writing to it and instead strictly use
> > amd64_set_gsbase(). But from what you've written, I'm guessing you're
> > already doing this, so the next thing to try is to create threads with
> > PTHREAD_SCOPE_SYSTEM or use libthr instead of libpthread, because if
> > I'm not mistaken, PTHREAD_SCOPE_PROCESS in libpthread doesn't preserve
> > gsbase either.

> Anyhoo, I'll try to use 'libthr' and see if this helps.

... and success! Indeed: 'amd64_set_gsbase()' + 'libthr.so' = love. 'libpthread.so'
is a no-no :)

I'm not out of the woods yet, I still have some crashes, but I suspect that's just
bad programming on my side.

Thanks,

-- 
Mihai Donțu



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