diff options
author | Roland McGrath <roland@redhat.com> | 2008-01-30 07:30:46 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:30:46 -0500 |
commit | efd1ca52d04d2f6df337a3332cee56cd60e6d4c4 (patch) | |
tree | cf1e630d25cc45f399388f5fc996d86cf3bcf9ff /arch/x86/kernel/process_64.c | |
parent | 13abd0e50433092c41551bc13c32268028b6d663 (diff) |
x86: TLS cleanup
This consolidates the four different places that implemented the same
encoding magic for the GDT-slot 32-bit TLS support. The old tls32.c was
renamed and is now only slightly modified to be the shared implementation.
Signed-off-by: Roland McGrath <roland@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Zachary Amsden <zach@vmware.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel/process_64.c')
-rw-r--r-- | arch/x86/kernel/process_64.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c index 9ea1d7546f80..ccc9d68d5a58 100644 --- a/arch/x86/kernel/process_64.c +++ b/arch/x86/kernel/process_64.c | |||
@@ -524,7 +524,8 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long rsp, | |||
524 | if (clone_flags & CLONE_SETTLS) { | 524 | if (clone_flags & CLONE_SETTLS) { |
525 | #ifdef CONFIG_IA32_EMULATION | 525 | #ifdef CONFIG_IA32_EMULATION |
526 | if (test_thread_flag(TIF_IA32)) | 526 | if (test_thread_flag(TIF_IA32)) |
527 | err = ia32_child_tls(p, childregs); | 527 | err = do_set_thread_area(p, -1, |
528 | (struct user_desc __user *)childregs->rsi, 0); | ||
528 | else | 529 | else |
529 | #endif | 530 | #endif |
530 | err = do_arch_prctl(p, ARCH_SET_FS, childregs->r8); | 531 | err = do_arch_prctl(p, ARCH_SET_FS, childregs->r8); |