This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Fwd: Additional registers used by NTPL on x64 Linux


Hi,

I know that %gs is used by NTPL to locate thread local data on x86.
So, how about the situation on x86-64?

I find some one said that:
"%fs points to the TLS area. If the value fits in 32 bits, it does the same as with %gs in 32bit mode . If the value does not fit in 32 bits, the full FS_BASE MSR is written, and %fs is set to 0."

However from the source code, I only find sys_arch_prctl is called with ARCH_SET_FS to set the base for %fs, but can not see any difference between 32-bit and 64-bit values.

I also wonder is %gs still occupied by NTPL for other uses? Where can
I find detailed documentation on this issue?

Thanks,

Wei Shen


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]