Lines Matching refs:tss

3090 				struct tss_segment_16 *tss)  in save_state_to_tss16()  argument
3092 tss->ip = ctxt->_eip; in save_state_to_tss16()
3093 tss->flag = ctxt->eflags; in save_state_to_tss16()
3094 tss->ax = reg_read(ctxt, VCPU_REGS_RAX); in save_state_to_tss16()
3095 tss->cx = reg_read(ctxt, VCPU_REGS_RCX); in save_state_to_tss16()
3096 tss->dx = reg_read(ctxt, VCPU_REGS_RDX); in save_state_to_tss16()
3097 tss->bx = reg_read(ctxt, VCPU_REGS_RBX); in save_state_to_tss16()
3098 tss->sp = reg_read(ctxt, VCPU_REGS_RSP); in save_state_to_tss16()
3099 tss->bp = reg_read(ctxt, VCPU_REGS_RBP); in save_state_to_tss16()
3100 tss->si = reg_read(ctxt, VCPU_REGS_RSI); in save_state_to_tss16()
3101 tss->di = reg_read(ctxt, VCPU_REGS_RDI); in save_state_to_tss16()
3103 tss->es = get_segment_selector(ctxt, VCPU_SREG_ES); in save_state_to_tss16()
3104 tss->cs = get_segment_selector(ctxt, VCPU_SREG_CS); in save_state_to_tss16()
3105 tss->ss = get_segment_selector(ctxt, VCPU_SREG_SS); in save_state_to_tss16()
3106 tss->ds = get_segment_selector(ctxt, VCPU_SREG_DS); in save_state_to_tss16()
3107 tss->ldt = get_segment_selector(ctxt, VCPU_SREG_LDTR); in save_state_to_tss16()
3111 struct tss_segment_16 *tss) in load_state_from_tss16() argument
3116 ctxt->_eip = tss->ip; in load_state_from_tss16()
3117 ctxt->eflags = tss->flag | 2; in load_state_from_tss16()
3118 *reg_write(ctxt, VCPU_REGS_RAX) = tss->ax; in load_state_from_tss16()
3119 *reg_write(ctxt, VCPU_REGS_RCX) = tss->cx; in load_state_from_tss16()
3120 *reg_write(ctxt, VCPU_REGS_RDX) = tss->dx; in load_state_from_tss16()
3121 *reg_write(ctxt, VCPU_REGS_RBX) = tss->bx; in load_state_from_tss16()
3122 *reg_write(ctxt, VCPU_REGS_RSP) = tss->sp; in load_state_from_tss16()
3123 *reg_write(ctxt, VCPU_REGS_RBP) = tss->bp; in load_state_from_tss16()
3124 *reg_write(ctxt, VCPU_REGS_RSI) = tss->si; in load_state_from_tss16()
3125 *reg_write(ctxt, VCPU_REGS_RDI) = tss->di; in load_state_from_tss16()
3131 set_segment_selector(ctxt, tss->ldt, VCPU_SREG_LDTR); in load_state_from_tss16()
3132 set_segment_selector(ctxt, tss->es, VCPU_SREG_ES); in load_state_from_tss16()
3133 set_segment_selector(ctxt, tss->cs, VCPU_SREG_CS); in load_state_from_tss16()
3134 set_segment_selector(ctxt, tss->ss, VCPU_SREG_SS); in load_state_from_tss16()
3135 set_segment_selector(ctxt, tss->ds, VCPU_SREG_DS); in load_state_from_tss16()
3137 cpl = tss->cs & 3; in load_state_from_tss16()
3143 ret = __load_segment_descriptor(ctxt, tss->ldt, VCPU_SREG_LDTR, cpl, in load_state_from_tss16()
3147 ret = __load_segment_descriptor(ctxt, tss->es, VCPU_SREG_ES, cpl, in load_state_from_tss16()
3151 ret = __load_segment_descriptor(ctxt, tss->cs, VCPU_SREG_CS, cpl, in load_state_from_tss16()
3155 ret = __load_segment_descriptor(ctxt, tss->ss, VCPU_SREG_SS, cpl, in load_state_from_tss16()
3159 ret = __load_segment_descriptor(ctxt, tss->ds, VCPU_SREG_DS, cpl, in load_state_from_tss16()
3203 struct tss_segment_32 *tss) in save_state_to_tss32() argument
3206 tss->eip = ctxt->_eip; in save_state_to_tss32()
3207 tss->eflags = ctxt->eflags; in save_state_to_tss32()
3208 tss->eax = reg_read(ctxt, VCPU_REGS_RAX); in save_state_to_tss32()
3209 tss->ecx = reg_read(ctxt, VCPU_REGS_RCX); in save_state_to_tss32()
3210 tss->edx = reg_read(ctxt, VCPU_REGS_RDX); in save_state_to_tss32()
3211 tss->ebx = reg_read(ctxt, VCPU_REGS_RBX); in save_state_to_tss32()
3212 tss->esp = reg_read(ctxt, VCPU_REGS_RSP); in save_state_to_tss32()
3213 tss->ebp = reg_read(ctxt, VCPU_REGS_RBP); in save_state_to_tss32()
3214 tss->esi = reg_read(ctxt, VCPU_REGS_RSI); in save_state_to_tss32()
3215 tss->edi = reg_read(ctxt, VCPU_REGS_RDI); in save_state_to_tss32()
3217 tss->es = get_segment_selector(ctxt, VCPU_SREG_ES); in save_state_to_tss32()
3218 tss->cs = get_segment_selector(ctxt, VCPU_SREG_CS); in save_state_to_tss32()
3219 tss->ss = get_segment_selector(ctxt, VCPU_SREG_SS); in save_state_to_tss32()
3220 tss->ds = get_segment_selector(ctxt, VCPU_SREG_DS); in save_state_to_tss32()
3221 tss->fs = get_segment_selector(ctxt, VCPU_SREG_FS); in save_state_to_tss32()
3222 tss->gs = get_segment_selector(ctxt, VCPU_SREG_GS); in save_state_to_tss32()
3226 struct tss_segment_32 *tss) in load_state_from_tss32() argument
3231 if (ctxt->ops->set_cr(ctxt, 3, tss->cr3)) in load_state_from_tss32()
3233 ctxt->_eip = tss->eip; in load_state_from_tss32()
3234 ctxt->eflags = tss->eflags | 2; in load_state_from_tss32()
3237 *reg_write(ctxt, VCPU_REGS_RAX) = tss->eax; in load_state_from_tss32()
3238 *reg_write(ctxt, VCPU_REGS_RCX) = tss->ecx; in load_state_from_tss32()
3239 *reg_write(ctxt, VCPU_REGS_RDX) = tss->edx; in load_state_from_tss32()
3240 *reg_write(ctxt, VCPU_REGS_RBX) = tss->ebx; in load_state_from_tss32()
3241 *reg_write(ctxt, VCPU_REGS_RSP) = tss->esp; in load_state_from_tss32()
3242 *reg_write(ctxt, VCPU_REGS_RBP) = tss->ebp; in load_state_from_tss32()
3243 *reg_write(ctxt, VCPU_REGS_RSI) = tss->esi; in load_state_from_tss32()
3244 *reg_write(ctxt, VCPU_REGS_RDI) = tss->edi; in load_state_from_tss32()
3251 set_segment_selector(ctxt, tss->ldt_selector, VCPU_SREG_LDTR); in load_state_from_tss32()
3252 set_segment_selector(ctxt, tss->es, VCPU_SREG_ES); in load_state_from_tss32()
3253 set_segment_selector(ctxt, tss->cs, VCPU_SREG_CS); in load_state_from_tss32()
3254 set_segment_selector(ctxt, tss->ss, VCPU_SREG_SS); in load_state_from_tss32()
3255 set_segment_selector(ctxt, tss->ds, VCPU_SREG_DS); in load_state_from_tss32()
3256 set_segment_selector(ctxt, tss->fs, VCPU_SREG_FS); in load_state_from_tss32()
3257 set_segment_selector(ctxt, tss->gs, VCPU_SREG_GS); in load_state_from_tss32()
3269 cpl = tss->cs & 3; in load_state_from_tss32()
3276 ret = __load_segment_descriptor(ctxt, tss->ldt_selector, VCPU_SREG_LDTR, in load_state_from_tss32()
3280 ret = __load_segment_descriptor(ctxt, tss->es, VCPU_SREG_ES, cpl, in load_state_from_tss32()
3284 ret = __load_segment_descriptor(ctxt, tss->cs, VCPU_SREG_CS, cpl, in load_state_from_tss32()
3288 ret = __load_segment_descriptor(ctxt, tss->ss, VCPU_SREG_SS, cpl, in load_state_from_tss32()
3292 ret = __load_segment_descriptor(ctxt, tss->ds, VCPU_SREG_DS, cpl, in load_state_from_tss32()
3296 ret = __load_segment_descriptor(ctxt, tss->fs, VCPU_SREG_FS, cpl, in load_state_from_tss32()
3300 ret = __load_segment_descriptor(ctxt, tss->gs, VCPU_SREG_GS, cpl, in load_state_from_tss32()