summaryrefslogtreecommitdiff
path: root/arch/sparc64/kernel/smp.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2005-07-25 06:36:26 +0400
committerDavid S. Miller <davem@davemloft.net>2005-07-25 06:36:26 +0400
commitdb7d9a4eb700be766cc9f29241483dbb1e748832 (patch)
tree48848384df15d9404ceab05867d7f4ef6b1a4bbe /arch/sparc64/kernel/smp.c
parentcdd5186f753b23ab51f86679bdc4cc698ab0b893 (diff)
downloadlinux-db7d9a4eb700be766cc9f29241483dbb1e748832.tar.xz
[SPARC64]: Move syscall success and newchild state out of thread flags.
These two bits were accesses non-atomically from assembler code. So, in order to eliminate any potential races resulting from that, move these pieces of state into two bytes elsewhere in struct thread_info. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/smp.c')
-rw-r--r--arch/sparc64/kernel/smp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c
index 7e8e2919e186..b9b42491e118 100644
--- a/arch/sparc64/kernel/smp.c
+++ b/arch/sparc64/kernel/smp.c
@@ -137,7 +137,7 @@ void __init smp_callin(void)
/* Clear this or we will die instantly when we
* schedule back to this idler...
*/
- clear_thread_flag(TIF_NEWCHILD);
+ current_thread_info()->new_child = 0;
/* Attach to the address space of init_task. */
atomic_inc(&init_mm.mm_count);