Hello,

It has become apparent that after a succesful
xc_domain_hvm_getcontext_partial( ..., HVM_SAVE_CODE(CPU), ...) call,
the sysenter_eip member of struct hvm_hw_cpu is always zero.

Looking in the code, the only two __vmwrite(GUEST_SYSENTER_EIP, ...)
calls occur in xen/arch/x86/hvm/vmx/vmx.c. One is in
vmx_msr_write_intercept(), but adding a printk() just after produces no
output after starting and stopping a guest.

The other is in vmx_vmcs_restore(), which seems to dutifully restore the
never-set value of zero after a save.

So this doesn't seem to be actually initialized anywhere. Could somebody
please recommend the best place to initialize it, and the best value to
initialize it with? Or maybe you could point out what I'm missing, if
that's the case?


Thanks,
Razvan

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to