Merge commit 'v2.6.26-rc9' into x86/cpu
This commit is contained in:
@@ -274,6 +274,7 @@ void flush_thread(void)
|
||||
/*
|
||||
* Forget coprocessor state..
|
||||
*/
|
||||
tsk->fpu_counter = 0;
|
||||
clear_fpu(tsk);
|
||||
clear_used_math();
|
||||
}
|
||||
@@ -590,8 +591,11 @@ struct task_struct * __switch_to(struct task_struct *prev_p, struct task_struct
|
||||
/* If the task has used fpu the last 5 timeslices, just do a full
|
||||
* restore of the math state immediately to avoid the trap; the
|
||||
* chances of needing FPU soon are obviously high now
|
||||
*
|
||||
* tsk_used_math() checks prevent calling math_state_restore(),
|
||||
* which can sleep in the case of !tsk_used_math()
|
||||
*/
|
||||
if (next_p->fpu_counter > 5)
|
||||
if (tsk_used_math(next_p) && next_p->fpu_counter > 5)
|
||||
math_state_restore();
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user