|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] One question to IST stack for PV guest
Jeremy/Keir, I'm trying to add vMCA injection to pv_ops dom0. Because
currently we didn't have virtual IST stack support, so I plan to use the kernel
stack for vMCE. But Andi told me that this method should have issue if MCE is
injected before syscall handler switches to kernel stack. After checking the
code, seems this apply in pv_ops dom0, since undo_xen_syscall will switch to
user space stack firstly (see following code).
I'm not sure if we really need to switch to user space stack, or we can simply
place user stack to oldrsp and don't switch the stack at all, since xen
hypervisor has use the kernel stack already.
Another option is to add vIST stack, but that requires changes for dom0/xen
interface and is a bit complex.
I checked the 2.6.18 kernel and seems it have no such issue, because syscall
entry in arch/x86_64/kernel/entry-xen.S will use kernel stack directly. (But
vMCE injection may have issue still because it use zeroentry).
BTW, Jeremy, seems vNMI support is not included in pvops dom0, will it be
supported in future?
Thanks
Yunhong Jiang
.macro undo_xen_syscall
mov 0*8(%rsp), %rcx
mov 1*8(%rsp), %r11
mov 5*8(%rsp), %rsp
.endm
/* Normal 64-bit system call target */
ENTRY(xen_syscall_target)
undo_xen_syscall
jmp system_call_after_swapgs
ENDPROC(xen_syscall_target)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] One question to IST stack for PV guest,
Jiang, Yunhong <=
|
|
|
|
|