Alexandre Julliard [mailto:julliard@winehq.com] wrote:
There are no more guarantees with the GDI area than with anything else. Microsoft is free to change that whenever they feel like it.
Negative offsets could work, but they would waste a full page of memory for each thread since the TEB has to be page-aligned. I'd stronly recommend finding a way to use the glibc threading support instead.
As I keep saying, we need a solution that works on platforms that don't support __thread.
Gareth Hughes wrote:
Alexandre Julliard [mailto:julliard@winehq.com] wrote:
There are no more guarantees with the GDI area than with anything else. Microsoft is free to change that whenever they feel like it.
Negative offsets could work, but they would waste a full page of memory for each thread since the TEB has to be page-aligned. I'd stronly recommend finding a way to use the glibc threading support instead.
As I keep saying, we need a solution that works on platforms that don't support __thread.
For these older versions of Linux, can't you just keep doing things as you do now?
I suspect most of the old versions of Linux you're worried about will vanish from user's desktops fairly quickly as soon as Linux distributions ship versions that include the current suite of improvements. (Not that people will kill for the new glibc, but there are a whole lot of improvements in font handling and desktop apps coming out shortly.)
- Dan
I suspect most of the old versions of Linux you're worried about will vanish from user's desktops fairly quickly as soon as Linux distributions ship versions that include the current suite of improvements. (Not that people will kill for the new glibc, but there are a whole lot of improvements in font handling and desktop apps coming out shortly.)
Remember that wine runs on other OS (eg NetBSD) which isn't going to start using glibc ever....
David
David Laight wrote:
I suspect most of the old versions of Linux you're worried about will vanish from user's desktops fairly quickly as soon as Linux distributions ship versions that include the current suite of improvements. (Not that people will kill for the new glibc, but there are a whole lot of improvements in font handling and desktop apps coming out shortly.)
Remember that wine runs on other OS (eg NetBSD) which isn't going to start using glibc ever....
I'm glad you brought up BSD; IMHO one of the arguments *for* using gcc's __thread support is that the underlying ABI appears to be very carefully defined for a largeish number of processors. This was a lot of work. Other operating systems that want to add TLS support can use the Linux TLS ABI as a guide, save themselves the effort, and perhaps end up more binary-compatible with Linux as a side-effect.
(Say, Gareth, have you discussed this with Jon Leech? See http://oss.sgi.com/projects/ogl-sample/ABI/ Seems like you want to revise or add to that ABI, so you ought to involve the ABI's authors in the discussion. Jon, have a look at this thread at https://listman.redhat.com/pipermail/phil-list/2003-February/thread.html)
- Dan