This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author neologix
Recipients bquinlan, dmalcolm, jnoller, kristjan.jonsson, lukasz.langa, neologix, pitrou, sandro.tosi, ysj.ray
Date 2011-04-26.16:20:07
SpamBayes Score 2.5247593e-10
Marked as misclassified No
Message-id <1303834808.9.0.968329581521.issue10517@psf.upfronthosting.co.za>
In-reply-to
Content
> How about deleting the mapping (pthread_key_delete) and recreating it
> from scratch, then?

Sounds good.
So the idea would be to retrieve the current thread's tstate, destroy the current autoTLSkey, re-create it, and re-associate the current tstate to this new key. I just did a quick test on RHEL4 and it works.
PyThread_ReinitTLS looks like a good candidate for that, but it's the same problem, autoTLSkey scope is limited to pystates.c (and I'm not sure that the tstate should be exposed to platform thread implementations).
There's also PyEval_ReinitThreads in ceval.c, exposing the autoTLSkey would make more sense (and it already knows about tstate, of course).
Where would you put it?
History
Date User Action Args
2011-04-26 16:20:08neologixsetrecipients: + neologix, bquinlan, pitrou, kristjan.jonsson, jnoller, dmalcolm, sandro.tosi, ysj.ray, lukasz.langa
2011-04-26 16:20:08neologixsetmessageid: <1303834808.9.0.968329581521.issue10517@psf.upfronthosting.co.za>
2011-04-26 16:20:08neologixlinkissue10517 messages
2011-04-26 16:20:08neologixcreate