This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
Fwd: Additional registers used by NTPL on x64 Linux
- From: "Wei Shen" <cquark at gmail dot com>
- To: libc-ports at sources dot redhat dot com
- Date: Fri, 25 May 2007 17:35:54 +0800
- Subject: Fwd: Additional registers used by NTPL on x64 Linux
- Dkim-signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=Riuly4lGov7bprBjYRlvm8w391H8TR1xBdiZbEF0reuAqKXjHlAhyhkx0hqEZqeXv1anV7j5I1IbNh6Q0Dq+OI7qQJ+HkO3p8Lw/3TY1zK97FTeTe+HPYn7AQALK62d6EDaUxDoaCGG4p4LEBfSSijLrcet/KjxgfPekexcsbq8=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=jHGkj+2OYJRAozrqUZD0sYmszwMyPhIEycJkz9SZoudVYtAR/f0hG5FSpGp4Y77mOoQk0g8Q0Jes7w0KfnEsJFur/5C10zQrvTFRNC+KJ/N6oxKRxB/24yT53fnQQrNolakheDohqckL/dd5/AKLIJFO2lfAVJaxxxvExRayjWo=
- References: <e12e59640705250228u4ef7ab81x131d48ba9798f34d@mail.gmail.com>
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