aboutsummaryrefslogtreecommitdiffstats
path: root/arch/microblaze/kernel/process.c
diff options
context:
space:
mode:
authorEdgar E. Iglesias <edgar.iglesias@gmail.com>2012-02-23 23:52:25 -0500
committerMichal Simek <monstr@monstr.eu>2012-05-25 00:41:18 -0400
commitd5c15f17844b8883bc13b61a8ae114f0d3d59cdd (patch)
treece21cc8c43d6cedb18bfec77df7386b26b7601d6 /arch/microblaze/kernel/process.c
parent8d95e1224afa22e7881fc823849342b5602d736e (diff)
microblaze: Setup correct pointer to TLS area
Setup a pointer to the TLS area in copy_thread. r10 is 6th argumetn which contains TLS area. And r21 is the thread reg. Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> Signed-off-by: David Holsgrove <david.holsgrove@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch/microblaze/kernel/process.c')
-rw-r--r--arch/microblaze/kernel/process.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/microblaze/kernel/process.c b/arch/microblaze/kernel/process.c
index 883b92789cdf..1944e00f07e1 100644
--- a/arch/microblaze/kernel/process.c
+++ b/arch/microblaze/kernel/process.c
@@ -182,8 +182,12 @@ int copy_thread(unsigned long clone_flags, unsigned long usp,
182#endif 182#endif
183 ti->cpu_context.r15 = (unsigned long)ret_from_fork - 8; 183 ti->cpu_context.r15 = (unsigned long)ret_from_fork - 8;
184 184
185 /*
186 * r21 is the thread reg, r10 is 6th arg to clone
187 * which contains TLS area
188 */
185 if (clone_flags & CLONE_SETTLS) 189 if (clone_flags & CLONE_SETTLS)
186 ; 190 childregs->r21 = childregs->r10;
187 191
188 return 0; 192 return 0;
189} 193}