On Wed, 2008-01-30 at 18:40 +0900, SUZUKI Kazuhiro wrote:
Hi Alex,
Thank you for your comment.
vcpu_increment_iip() takes a pointer of struct vcpu and calculate regs
from vcpu.
If current->arch._thread.on_ustack == 1 then regs == vcpu_regs(current),
otherwise regs is created in the stack. vcpu_regs(current) indicates
guest's registers.
So we cannot use vcpu_increment_iip() in this part.
How about this patch.
Thanks, this looks better. I made one minor change to make use of
the ia64_psr() macro instead of manually extracting cr_ipsr. Thanks,
Alex