[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] When generating an exception frame for injection into a
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxx # Node ID 6b48b53b682d5fa8bc61ceb727a346d25148c1e9 # Parent 872e94f8eb6944d61d16b7e097f9b613fd52fc4e When generating an exception frame for injection into a guest, that frame's base should be aligned on a 16-byte boundary (as is done by the hardware). Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx> diff -r 872e94f8eb69 -r 6b48b53b682d xen/arch/x86/x86_64/entry.S --- a/xen/arch/x86/x86_64/entry.S Tue Aug 30 16:44:05 2005 +++ b/xen/arch/x86/x86_64/entry.S Tue Aug 30 16:53:40 2005 @@ -339,7 +339,8 @@ 1: /* In kernel context already: push new frame at existing %rsp. */ movq UREGS_rsp+8(%rsp),%rsi andb $0xfc,UREGS_cs+8(%rsp) # Indicate kernel context to guest. -2: movq $HYPERVISOR_VIRT_START,%rax +2: andq $~0xf,%rsi # Stack frames are 16-byte aligned. + movq $HYPERVISOR_VIRT_START,%rax cmpq %rax,%rsi jb 1f # In +ve address space? Then okay. movq $HYPERVISOR_VIRT_END+60,%rax _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |