Lines Matching refs:regs
44 static int emulate_invalid_rdtscp(struct cpu_user_regs *regs) in emulate_invalid_rdtscp() argument
50 eip = regs->rip; in emulate_invalid_rdtscp()
59 pv_soft_rdtsc(v, regs, 1); in emulate_invalid_rdtscp()
60 pv_emul_instruction_done(regs, eip); in emulate_invalid_rdtscp()
64 static int emulate_forced_invalid_op(struct cpu_user_regs *regs) in emulate_forced_invalid_op() argument
71 eip = regs->rip; in emulate_forced_invalid_op()
94 !guest_kernel_mode(current, regs) ) in emulate_forced_invalid_op()
96 regs->rip = eip; in emulate_forced_invalid_op()
97 pv_inject_hw_exception(TRAP_gp_fault, regs->error_code); in emulate_forced_invalid_op()
103 guest_cpuid(current, regs->eax, regs->ecx, &res); in emulate_forced_invalid_op()
105 regs->rax = res.a; in emulate_forced_invalid_op()
106 regs->rbx = res.b; in emulate_forced_invalid_op()
107 regs->rcx = res.c; in emulate_forced_invalid_op()
108 regs->rdx = res.d; in emulate_forced_invalid_op()
110 pv_emul_instruction_done(regs, eip); in emulate_forced_invalid_op()
112 trace_trap_one_addr(TRC_PV_FORCED_INVALID_OP, regs->rip); in emulate_forced_invalid_op()
117 bool pv_emulate_invalid_op(struct cpu_user_regs *regs) in pv_emulate_invalid_op() argument
119 return !emulate_invalid_rdtscp(regs) && !emulate_forced_invalid_op(regs); in pv_emulate_invalid_op()