Displaying 2 results from an estimated 2 matches for "ptwr_emulate_ops".
2010 Aug 13
0
instrction emulation problem
Hi Keir:
I am sorry trouble you again. I want to emulate instruction "push %ebp" in Xen. I found the function emulate_privilege_op does not satisfy this requirement.
Then I resort to x86_emulate. I construct the x86_emulate_ctxt and reuse the "ptwr_emulate_ops".
code like this:
extern const struct x86_emulate_ops ptwr_emulate_ops;
in do_general_protection {
....
struct x86_emulate_ctxt ctxt;
ctxt.regs = regs;
ctxt.force_writeback = 1; // 0 is the same
ctxt.addr_size = 32;
ctxt.sp_size = 32;
ret = x86_emulate(&ctxt, &ptwr_emulate_ops...
2008 Apr 21
1
[PATCH] x86-64: emulation support for cmpxchg16b
...@@ -3650,13 +3651,16 @@ static int ptwr_emulated_cmpxchg8b(
offset, ((u64)old_hi << 32) | old, ((u64)new_hi << 32) | new, 8, 1,
container_of(ctxt, struct ptwr_emulate_ctxt, ctxt));
}
+#else
+#define ptwr_emulated_cmpxchg8b NULL
+#endif
static struct x86_emulate_ops ptwr_emulate_ops = {
.read = ptwr_emulated_read,
.insn_fetch = ptwr_emulated_read,
.write = ptwr_emulated_write,
.cmpxchg = ptwr_emulated_cmpxchg,
- .cmpxchg8b = ptwr_emulated_cmpxchg8b
+ .cmpxchg2 = ptwr_emulated_cmpxchg8b
};
/* Write page fault handler: check if gues...