aboutsummaryrefslogtreecommitdiff
path: root/arch/m68k/kernel/process.c
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim@codesourcery.com>2009-12-07 00:24:27 -0800
committerGeert Uytterhoeven <geert@linux-m68k.org>2010-02-27 18:31:19 +0100
commit9674cdc74d63f346870943ef966a034f8c71ee57 (patch)
treec590640335983c5b1a7f5c9589478bf90fb68d03 /arch/m68k/kernel/process.c
parentf54bcdc2b81558a2b7e624cfeb4992422d9265f9 (diff)
m68k: Add NPTL support
This patch adds several syscalls, that provide necessary functionality to support NPTL on m68k/ColdFire. The syscalls are get_thread_area, set_thread_area, atomic_cmpxchg_32 and atomic_barrier. The cmpxchg syscall is required for ColdFire as it doesn't support 'cas' instruction. Also a ptrace call PTRACE_GET_THREAD_AREA is added to allow debugger to inspect the TLS storage. Signed-off-by: Maxim Kuvyrkov <maxim@codesourcery.com> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'arch/m68k/kernel/process.c')
-rw-r--r--arch/m68k/kernel/process.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/m68k/kernel/process.c b/arch/m68k/kernel/process.c
index 05296593e71..17c3f325255 100644
--- a/arch/m68k/kernel/process.c
+++ b/arch/m68k/kernel/process.c
@@ -251,6 +251,10 @@ int copy_thread(unsigned long clone_flags, unsigned long usp,
p->thread.usp = usp;
p->thread.ksp = (unsigned long)childstack;
+
+ if (clone_flags & CLONE_SETTLS)
+ task_thread_info(p)->tp_value = regs->d5;
+
/*
* Must save the current SFC/DFC value, NOT the value when
* the parent was last descheduled - RGH 10-08-96