diff options
Diffstat (limited to 'sys/amd64/include/pcb.h')
-rw-r--r-- | sys/amd64/include/pcb.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/sys/amd64/include/pcb.h b/sys/amd64/include/pcb.h index e6a5add..2e2ca87 100644 --- a/sys/amd64/include/pcb.h +++ b/sys/amd64/include/pcb.h @@ -82,11 +82,25 @@ struct pcb { struct user_segment_descriptor pcb_gs32sd; }; +struct xpcb { + struct pcb xpcb_pcb; + register_t xpcb_cr0; + register_t xpcb_cr2; + register_t xpcb_cr4; + register_t xpcb_kgsbase; + uint32_t xpcb_ss; + struct region_descriptor xpcb_gdt; + struct region_descriptor xpcb_idt; + struct region_descriptor xpcb_ldt; + uint16_t xpcb_tr; +}; + #ifdef _KERNEL struct trapframe; void makectx(struct trapframe *, struct pcb *); void savectx(struct pcb *); +int savectx2(struct xpcb *); #endif #endif /* _AMD64_PCB_H_ */ |