diff options
author | David S. Miller <davem@davemloft.net> | 2005-07-24 19:36:26 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-07-24 19:36:26 -0700 |
commit | db7d9a4eb700be766cc9f29241483dbb1e748832 (patch) | |
tree | 48848384df15d9404ceab05867d7f4ef6b1a4bbe /arch/sparc64/kernel/smp.c | |
parent | cdd5186f753b23ab51f86679bdc4cc698ab0b893 (diff) | |
download | op-kernel-dev-db7d9a4eb700be766cc9f29241483dbb1e748832.zip op-kernel-dev-db7d9a4eb700be766cc9f29241483dbb1e748832.tar.gz |
[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.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 7e8e291..b9b4249 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); |