[Mesa-dev] [PATCH 1/4] dispatch: Use general-dynamic TLS model rather than initial-exec.
Christopher James Halse Rogers
christopher.halse.rogers at canonical.com
Wed Mar 23 23:32:07 PDT 2011
On Thu, 2011-03-24 at 16:07 +1100, Christopher James Halse Rogers wrote:
> On Wed, 2011-03-23 at 17:48 -0700, Eric Anholt wrote:
> > On Thu, 24 Mar 2011 10:33:36 +1100, christopher.halse.rogers at canonical.com wrote:
> > > From: Christopher James Halse Rogers <christopher.halse.rogers at canonical.com>
> > >
> > > The initial-exec static TLS model is inappropriate for libraries
> > > that might be dynamically loaded. Since libGL is dynamically loaded
> > > by any number of projects mesa must instead use the general-dynamic
> > > TLS model.
> > >
> > > This has apparently always been broken for projects dynamically loading
> > > libGL and libstdc++, but now that libGL links to libstdc++ it's much
> > > more visible.
> > >
> > > cf: Launchpad bug: https://bugs.launchpad.net/bugs/259219
> > > First part of fix for https://bugs.freedesktop.org/show_bug.cgi?id=35268
> > Looks like someone bisecting through and hitting the first commit would
> > get a broken build. I would think squash 2/4 and 3/4 and move the
> > _glapi_tls_Dispatch change to that new commit. I didn't receive patch
> > 4/4.
> Ah, I see I've got a bounce for 4/4 due to the size; it's regenerating
> the assembly files. I'll clean this up and send the regeneration patch
I've squashed all the commits together; the tls model of the assembly
dispatch code and the dispatch tables have to match in order for things
Since the revised patch is ~300K, I've attached it to bugzilla:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 490 bytes
Desc: This is a digitally signed message part
More information about the mesa-dev