Actually save and restore FPU state on APs during suspend and resume.

Committed from:	Atom-based HP netbook after resuming in X
This commit is contained in:
John Baldwin 2014-09-03 21:17:09 +00:00
parent 64e9597058
commit 6f00c0f90f

View File

@ -1522,15 +1522,11 @@ cpususpend_handler(void)
cpu = PCPU_GET(cpuid);
if (savectx(susppcbs[cpu])) {
#ifdef DEV_NPX
npxsuspend(&suspcbs[cpu]->pcb_fpususpend);
#endif
npxsuspend(&susppcbs[cpu]->pcb_fpususpend);
wbinvd();
CPU_SET_ATOMIC(cpu, &suspended_cpus);
} else {
#ifdef DEV_NPX
npxresume(&suspcbs[cpu]->pcb_fpususpend);
#endif
npxresume(&susppcbs[cpu]->pcb_fpususpend);
pmap_init_pat();
PCPU_SET(switchtime, 0);
PCPU_SET(switchticks, ticks);