summaryrefslogtreecommitdiff
path: root/include/asm-sh/processor.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.transmeta.com>2003-03-09 18:20:35 -0800
committerLinus Torvalds <torvalds@home.transmeta.com>2003-03-09 18:20:35 -0800
commit450b4497e37d77eb6ab44b9001c50e68de38afde (patch)
tree53843cc42acbb8d928b53afd4a453b8ce202d82f /include/asm-sh/processor.h
parent36f0619922472bf8e5ecf83ac420114952a87bf3 (diff)
Move "used FPU status" into new non-atomic thread_info->status field.
This allows us to avoid having to use atomic updates for the lazy FP status setting, since we don't have to worry about other CPU's racing on the fields. Also, fix x86 FP state after fork() by making sure the FP is unlazied _before_ we copy the state information. Otherwise, if a process did a fork() while holding the FP state lazily in the registers, the child would incorrectly unlazy bogus state.
Diffstat (limited to 'include/asm-sh/processor.h')
-rw-r--r--include/asm-sh/processor.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/asm-sh/processor.h b/include/asm-sh/processor.h
index b3fd05c8cfd8..673ae9035bb9 100644
--- a/include/asm-sh/processor.h
+++ b/include/asm-sh/processor.h
@@ -134,6 +134,10 @@ struct mm_struct;
/* Free all resources held by a thread. */
extern void release_thread(struct task_struct *);
+
+/* Prepare to copy thread state - unlazy all lazy status */
+#define prepare_to_copy(tsk) do { } while (0)
+
/*
* create a kernel thread without removing it from tasklists
*/