[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] x86: Change a local label in asm entry stubs to really be local.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1211449309 -3600
# Node ID e48453f82d30ded8c7b4f454f7a9d37ea56d3fcb
# Parent  3ed3d0688fa8183e9c8e221a390f90b564516d98
x86: Change a local label in asm entry stubs to really be local.
This prevents it appearing in crash traces, where it can be a bit confusing.

Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/x86/x86_32/entry.S        |    5 ++---
 xen/arch/x86/x86_64/compat/entry.S |    5 ++---
 xen/arch/x86/x86_64/entry.S        |    5 ++---
 3 files changed, 6 insertions(+), 9 deletions(-)

diff -r 3ed3d0688fa8 -r e48453f82d30 xen/arch/x86/x86_32/entry.S
--- a/xen/arch/x86/x86_32/entry.S       Thu May 22 10:40:40 2008 +0100
+++ b/xen/arch/x86/x86_32/entry.S       Thu May 22 10:41:49 2008 +0100
@@ -197,13 +197,12 @@ 1:      sti
 #define SHADOW_BYTES 24 /* 6 shadow parameters */
 #endif
         cmpb  $0,tb_init_done
-        je    tracing_off
+        je    1f
         call  trace_hypercall
         /* Now restore all the registers that trace_hypercall clobbered */
         movl  UREGS_eax+SHADOW_BYTES(%esp),%eax /* Hypercall # */
 #undef SHADOW_BYTES
-tracing_off:
-        call *hypercall_table(,%eax,4)
+1:      call *hypercall_table(,%eax,4)
         addl  $24,%esp     # Discard the shadow parameters
 #ifndef NDEBUG
         /* Deliberately corrupt real parameter regs used by this hypercall. */
diff -r 3ed3d0688fa8 -r e48453f82d30 xen/arch/x86/x86_64/compat/entry.S
--- a/xen/arch/x86/x86_64/compat/entry.S        Thu May 22 10:40:40 2008 +0100
+++ b/xen/arch/x86/x86_64/compat/entry.S        Thu May 22 10:41:49 2008 +0100
@@ -59,7 +59,7 @@ ENTRY(compat_hypercall)
 #define SHADOW_BYTES 0  /* No on-stack shadow state */
 #endif
         cmpb  $0,tb_init_done(%rip)
-        je    compat_tracing_off
+        je    1f
         call  trace_hypercall
         /* Now restore all the registers that trace_hypercall clobbered */
         movl  UREGS_rax+SHADOW_BYTES(%rsp),%eax   /* Hypercall #  */
@@ -70,8 +70,7 @@ ENTRY(compat_hypercall)
         movl  UREGS_rdi+SHADOW_BYTES(%rsp),%r8d   /* Arg 5        */
         movl  UREGS_rbp+SHADOW_BYTES(%rsp),%r9d   /* Arg 6        */
 #undef SHADOW_BYTES
-compat_tracing_off:
-        leaq  compat_hypercall_table(%rip),%r10
+1:      leaq  compat_hypercall_table(%rip),%r10
         PERFC_INCR(PERFC_hypercalls, %rax, %rbx)
         callq *(%r10,%rax,8)
 #ifndef NDEBUG
diff -r 3ed3d0688fa8 -r e48453f82d30 xen/arch/x86/x86_64/entry.S
--- a/xen/arch/x86/x86_64/entry.S       Thu May 22 10:40:40 2008 +0100
+++ b/xen/arch/x86/x86_64/entry.S       Thu May 22 10:41:49 2008 +0100
@@ -163,7 +163,7 @@ ENTRY(syscall_enter)
 #define SHADOW_BYTES 0  /* No on-stack shadow state */
 #endif
         cmpb  $0,tb_init_done(%rip)
-        je    tracing_off
+        je    1f
         call  trace_hypercall
         /* Now restore all the registers that trace_hypercall clobbered */
         movq  UREGS_rax+SHADOW_BYTES(%rsp),%rax   /* Hypercall #  */
@@ -174,8 +174,7 @@ ENTRY(syscall_enter)
         movq  UREGS_rdi+SHADOW_BYTES(%rsp),%r8    /* Arg 5        */
         movq  UREGS_rbp+SHADOW_BYTES(%rsp),%r9    /* Arg 6        */
 #undef SHADOW_BYTES
-tracing_off:
-        leaq  hypercall_table(%rip),%r10
+1:      leaq  hypercall_table(%rip),%r10
         PERFC_INCR(PERFC_hypercalls, %rax, %rbx)
         callq *(%r10,%rax,8)
 #ifndef NDEBUG

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.