[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: GS register to access thread-specific state on x86



On Wed, May 05, 2004 at 01:39:33PM -0400, Steven Augart wrote:
> Dear debian-glibc list,
> 
> It appears that libc6 on the x86 Debian (at least libc6-2.3.2-ds1-11) 
> is not compiled to access thread-specific state via the GS register; 
> instead, it seems to rely upon masking the low-bits of the stack 
> pointer, expecting to find the thread-specific state at the base of 
> the stack.  This means it gets very upset if a program manipulates the 
> stack pointer.

Try using a 2.6 kernel instead.  The base glibc supports kernels which
did not allow use of the segment registers in this fashion; if you use
a 2.6 kernel, support for floating stacks (and for NPTL, incidentally)
will automatically be enabled.

Red Hat and SuSE have a tighter coupling between their distribution and
the kernels it supports than Debian does.  We still have people using
the 2.2 series kernels.

The decision to not support floating stacks on a 2.4 kernel was made
out of practicality only; we already have three versions of glibc for
x86 systems, and a fourth would be overkill.

-- 
Daniel Jacobowitz



Reply to: