X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=arch%2Fum%2Fsys-x86_64%2Ftls.c;h=f7ba46200ecdd03fc895810ac620c767d7b66851;hb=88ed86fee6651033de9b7038dac7869a9f19775a;hp=ce1bf1b81c431dcb859db4f25410a2758c226f19;hpb=a8b59e79ed55de97949ff1ca7d933786b95b39bd;p=linux-2.6-omap-h63xx.git diff --git a/arch/um/sys-x86_64/tls.c b/arch/um/sys-x86_64/tls.c index ce1bf1b81c4..f7ba46200ec 100644 --- a/arch/um/sys-x86_64/tls.c +++ b/arch/um/sys-x86_64/tls.c @@ -1,14 +1,17 @@ #include "linux/sched.h" -void debug_arch_force_load_TLS(void) -{ -} - void clear_flushed_tls(struct task_struct *task) { } int arch_copy_tls(struct task_struct *t) { - return 0; + /* + * If CLONE_SETTLS is set, we need to save the thread id + * (which is argument 5, child_tid, of clone) so it can be set + * during context switches. + */ + t->thread.arch.fs = t->thread.regs.regs.gp[R8 / sizeof(long)]; + + return 0; }