Displaying 1 result from an estimated 1 matches for "e81b5fac".
2010 Aug 13
0
instrction emulation problem
...otection {
....
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);
...
}
the error message is:
(XEN) mm.c:5235:d0 ptwr_emulate: bad access (cr2=553a4000, addr=e81b5fac, bytes=4)
I have another idea, I directly update the stack and change the EIP and ESP
like this:
regs->esp -= 4;
__raw_copy_to_guest((void*)regs->esp, ®s->ebp, sizeof(unsigned int));
regs->eip += 1;
I am not sure it works like this way. Please give me some tips. Thanks
Ch...