diff options
| author | John Baldwin <jhb@FreeBSD.org> | 2014-09-22 20:34:36 +0000 |
|---|---|---|
| committer | John Baldwin <jhb@FreeBSD.org> | 2014-09-22 20:34:36 +0000 |
| commit | acf42cdabd1da09df7da52f2f718b955ada83cd1 (patch) | |
| tree | 9aca44b47e0ae8505d550d52451704b9bce3514e /sys/amd64/include | |
| parent | ac417171e44dc93163489c10f6e358ff22695dc7 (diff) | |
Notes
Diffstat (limited to 'sys/amd64/include')
| -rw-r--r-- | sys/amd64/include/fpu.h | 1 | ||||
| -rw-r--r-- | sys/amd64/include/pcb.h | 14 |
2 files changed, 10 insertions, 5 deletions
diff --git a/sys/amd64/include/fpu.h b/sys/amd64/include/fpu.h index be1bdc6c5d7f..78d2fee2714d 100644 --- a/sys/amd64/include/fpu.h +++ b/sys/amd64/include/fpu.h @@ -58,6 +58,7 @@ int fpuformat(void); int fpugetregs(struct thread *td); void fpuinit(void); void fpurestore(void *addr); +void fpuresume(void *addr); void fpusave(void *addr); int fpusetregs(struct thread *td, struct savefpu *addr, char *xfpustate, size_t xfpustate_size); diff --git a/sys/amd64/include/pcb.h b/sys/amd64/include/pcb.h index 80aff86eb685..153393ffc15b 100644 --- a/sys/amd64/include/pcb.h +++ b/sys/amd64/include/pcb.h @@ -97,14 +97,18 @@ struct pcb { register_t pcb_lstar; register_t pcb_cstar; register_t pcb_sfmask; - register_t pcb_xsmask; - - /* fpu context for suspend/resume */ - void *pcb_fpususpend; struct savefpu *pcb_save; - uint64_t pcb_pad[3]; + uint64_t pcb_pad[5]; +}; + +/* Per-CPU state saved during suspend and resume. */ +struct susppcb { + struct pcb sp_pcb; + + /* fpu context for suspend/resume */ + void *sp_fpususpend; }; #endif |
