diff options
author | Maxim Kuvyrkov <maxim@codesourcery.com> | 2009-12-07 03:24:27 -0500 |
---|---|---|
committer | Geert Uytterhoeven <geert@linux-m68k.org> | 2010-02-27 12:31:19 -0500 |
commit | 9674cdc74d63f346870943ef966a034f8c71ee57 (patch) | |
tree | c590640335983c5b1a7f5c9589478bf90fb68d03 /arch/m68k/kernel/process.c | |
parent | f54bcdc2b81558a2b7e624cfeb4992422d9265f9 (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.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/m68k/kernel/process.c b/arch/m68k/kernel/process.c index 05296593e718..17c3f325255d 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, | |||
251 | 251 | ||
252 | p->thread.usp = usp; | 252 | p->thread.usp = usp; |
253 | p->thread.ksp = (unsigned long)childstack; | 253 | p->thread.ksp = (unsigned long)childstack; |
254 | |||
255 | if (clone_flags & CLONE_SETTLS) | ||
256 | task_thread_info(p)->tp_value = regs->d5; | ||
257 | |||
254 | /* | 258 | /* |
255 | * Must save the current SFC/DFC value, NOT the value when | 259 | * Must save the current SFC/DFC value, NOT the value when |
256 | * the parent was last descheduled - RGH 10-08-96 | 260 | * the parent was last descheduled - RGH 10-08-96 |