diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-10-12 06:39:30 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-10-12 06:39:50 -0400 |
| commit | 4c7145a1ec1bb789d5f07e47510e8bda546a7c4a (patch) | |
| tree | e2767b77e5413473a3bba302237f4669a203f183 /arch/mips/kernel/process.c | |
| parent | 74e91604b2452c15bbe72d77b37cf47ed0310d13 (diff) | |
| parent | fd048088306656824958e7783ffcee27e241b361 (diff) | |
Merge branch 'linus' into x86/spinlocks
Done to prevent this failure of an Octopus merge:
Added arch/arm/include/asm/byteorder.h in both, but differently.
ERROR: Merge conflict in arch/arm/include/asm/byteorder.h
Auto-merging include/asm-x86/spinlock.h
ERROR: Merge conflict in include/asm-x86/spinlock.h
fatal: merge program failed
Diffstat (limited to 'arch/mips/kernel/process.c')
| -rw-r--r-- | arch/mips/kernel/process.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c index b16facd9ea8e..22fc19bbe87f 100644 --- a/arch/mips/kernel/process.c +++ b/arch/mips/kernel/process.c | |||
| @@ -55,7 +55,7 @@ void __noreturn cpu_idle(void) | |||
| 55 | while (1) { | 55 | while (1) { |
| 56 | tick_nohz_stop_sched_tick(1); | 56 | tick_nohz_stop_sched_tick(1); |
| 57 | while (!need_resched()) { | 57 | while (!need_resched()) { |
| 58 | #ifdef CONFIG_SMTC_IDLE_HOOK_DEBUG | 58 | #ifdef CONFIG_MIPS_MT_SMTC |
| 59 | extern void smtc_idle_loop_hook(void); | 59 | extern void smtc_idle_loop_hook(void); |
| 60 | 60 | ||
| 61 | smtc_idle_loop_hook(); | 61 | smtc_idle_loop_hook(); |
| @@ -145,17 +145,18 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp, | |||
| 145 | */ | 145 | */ |
| 146 | p->thread.cp0_status = read_c0_status() & ~(ST0_CU2|ST0_CU1); | 146 | p->thread.cp0_status = read_c0_status() & ~(ST0_CU2|ST0_CU1); |
| 147 | childregs->cp0_status &= ~(ST0_CU2|ST0_CU1); | 147 | childregs->cp0_status &= ~(ST0_CU2|ST0_CU1); |
| 148 | clear_tsk_thread_flag(p, TIF_USEDFPU); | ||
| 149 | 148 | ||
| 150 | #ifdef CONFIG_MIPS_MT_FPAFF | 149 | #ifdef CONFIG_MIPS_MT_SMTC |
| 151 | /* | 150 | /* |
| 152 | * FPU affinity support is cleaner if we track the | 151 | * SMTC restores TCStatus after Status, and the CU bits |
| 153 | * user-visible CPU affinity from the very beginning. | 152 | * are aliased there. |
| 154 | * The generic cpus_allowed mask will already have | ||
| 155 | * been copied from the parent before copy_thread | ||
| 156 | * is invoked. | ||
| 157 | */ | 153 | */ |
| 158 | p->thread.user_cpus_allowed = p->cpus_allowed; | 154 | childregs->cp0_tcstatus &= ~(ST0_CU2|ST0_CU1); |
| 155 | #endif | ||
| 156 | clear_tsk_thread_flag(p, TIF_USEDFPU); | ||
| 157 | |||
| 158 | #ifdef CONFIG_MIPS_MT_FPAFF | ||
| 159 | clear_tsk_thread_flag(p, TIF_FPUBOUND); | ||
| 159 | #endif /* CONFIG_MIPS_MT_FPAFF */ | 160 | #endif /* CONFIG_MIPS_MT_FPAFF */ |
| 160 | 161 | ||
| 161 | if (clone_flags & CLONE_SETTLS) | 162 | if (clone_flags & CLONE_SETTLS) |
