From e3b4abcb9607063735ea134eca6fad62f8147f20 Mon Sep 17 00:00:00 2001 From: Kanoj Sarcar Date: Thu, 11 May 2000 20:59:13 +0000 Subject: SMP FPU management: similar to what sparc does, no lazy fpu context switching in SMP mode, use PF_USEDFPU to determine whether a program used the fpu in the last time quantum and so needs the fpu context to be saved during context switch. --- include/asm-mips64/processor.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'include/asm-mips64/processor.h') diff --git a/include/asm-mips64/processor.h b/include/asm-mips64/processor.h index 0532dbf0c..1932672e7 100644 --- a/include/asm-mips64/processor.h +++ b/include/asm-mips64/processor.h @@ -87,6 +87,14 @@ extern int EISA_bus; /* Lazy FPU handling on uni-processor */ extern struct task_struct *last_task_used_math; +#ifndef CONFIG_SMP +#define IS_FPU_OWNER() (last_task_used_math == current) +#define CLEAR_FPU_OWNER() last_task_used_math = NULL; +#else +#define IS_FPU_OWNER() (current->flags & PF_USEDFPU) +#define CLEAR_FPU_OWNER() current->flags &= ~PF_USEDFPU; +#endif + /* * User space process size: 1TB. This is hardcoded into a few places, * so don't change it unless you know what you are doing. TASK_SIZE -- cgit v1.2.3