WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] Fix x86/64 build.

# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1170970229 0
# Node ID 9e27245a692e9baa2266415eb2c66d0f0510ea30
# Parent  3050c8339da62896a7d3af07e6095a07545e486b
Fix x86/64 build.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
 xen/arch/x86/x86_64/Makefile       |    3 ++-
 xen/arch/x86/x86_64/compat/entry.S |   27 ++++++++++++++++++++++-----
 xen/arch/x86/x86_64/entry.S        |    8 ++------
 3 files changed, 26 insertions(+), 12 deletions(-)

diff -r 3050c8339da6 -r 9e27245a692e xen/arch/x86/x86_64/Makefile
--- a/xen/arch/x86/x86_64/Makefile      Thu Feb 08 18:18:56 2007 +0000
+++ b/xen/arch/x86/x86_64/Makefile      Thu Feb 08 21:30:29 2007 +0000
@@ -1,3 +1,5 @@ obj-y += entry.o
+subdir-y += compat
+
 obj-y += entry.o
 obj-y += compat_kexec.o
 obj-y += gpr_switch.o
@@ -13,7 +15,6 @@ ifeq ($(CONFIG_COMPAT),y)
 # extra dependencies
 compat.o:      ../compat.c
 domctl.o:      ../domctl.c
-entry.o:       compat/entry.S
 mm.o:          compat/mm.c
 physdev.o:     ../physdev.c
 platform_hypercall.o: ../platform_hypercall.c
diff -r 3050c8339da6 -r 9e27245a692e xen/arch/x86/x86_64/compat/entry.S
--- a/xen/arch/x86/x86_64/compat/entry.S        Thu Feb 08 18:18:56 2007 +0000
+++ b/xen/arch/x86/x86_64/compat/entry.S        Thu Feb 08 21:30:29 2007 +0000
@@ -2,10 +2,27 @@
  * Compatibility hypercall routines.
  */
 
+#include <xen/config.h>
+#include <xen/errno.h>
+#include <xen/softirq.h>
+#include <asm/asm_defns.h>
+#include <asm/apicdef.h>
+#include <asm/page.h>
 #include <asm/desc.h>
-
-.text
-
+#include <public/xen.h>
+
+#define GET_GUEST_REGS(reg)                     \
+        movq $~(STACK_SIZE-1),reg;              \
+        andq %rsp,reg;                          \
+        orq  $(STACK_SIZE-CPUINFO_sizeof),reg;
+
+#define GET_CURRENT(reg)         \
+        movq $STACK_SIZE-8, reg; \
+        orq  %rsp, reg;          \
+        andq $~7,reg;            \
+        movq (reg),reg;
+
+        ALIGN
 ENTRY(compat_hypercall)
         pushq $0
         movl  $TRAP_syscall,4(%rsp)
@@ -62,7 +79,7 @@ compat_skip_clobber:
         movl  %eax,UREGS_rax(%rsp)       # save the return value
 
 /* %rbx: struct vcpu */
-compat_test_all_events:
+ENTRY(compat_test_all_events)
         cli                             # tests must not race interrupts
 /*compat_test_softirqs:*/
         movl  VCPU_processor(%rbx),%eax
@@ -164,7 +181,7 @@ 1:
 .previous
 
 /* %rdx: trap_bounce, %rbx: struct vcpu */
-compat_post_handle_exception:
+ENTRY(compat_post_handle_exception)
         testb $TBF_EXCEPTION,TRAPBOUNCE_flags(%rdx)
         jz    compat_test_all_events
         call  compat_create_bounce_frame
diff -r 3050c8339da6 -r 9e27245a692e xen/arch/x86/x86_64/entry.S
--- a/xen/arch/x86/x86_64/entry.S       Thu Feb 08 18:18:56 2007 +0000
+++ b/xen/arch/x86/x86_64/entry.S       Thu Feb 08 21:30:29 2007 +0000
@@ -319,7 +319,7 @@ domain_crash_synchronous_string:
 domain_crash_synchronous_string:
         .asciz "domain_crash_sync called from entry.S\n"
 
-domain_crash_synchronous:
+ENTRY(domain_crash_synchronous)
         # Get out of the guest-save area of the stack.
         GET_GUEST_REGS(%rax)
         movq  %rax,%rsp
@@ -357,7 +357,7 @@ ENTRY(ret_from_intr)
 
         ALIGN
 /* No special register assumptions. */
-handle_exception:
+ENTRY(handle_exception)
         SAVE_ALL
         testb $X86_EFLAGS_IF>>8,UREGS_eflags+1(%rsp)
         jz    exception_with_ints_disabled
@@ -633,7 +633,3 @@ ENTRY(hypercall_args_table)
         .rept NR_hypercalls-(.-hypercall_args_table)
         .byte 0 /* do_ni_hypercall      */
         .endr
-
-#ifdef CONFIG_COMPAT
-#include "compat/entry.S"
-#endif

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] Fix x86/64 build., Xen patchbot-unstable <=