diff options
author | Jan Beulich <jbeulich@novell.com> | 2011-08-19 09:54:53 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2011-08-19 09:54:53 +0100 |
commit | 2bd22d3c9919029034d51322e301ca158137994a (patch) | |
tree | 3c93c240e1ed379578798688a3302da3fcff0485 /xen/arch/x86/boot/trampoline.S | |
parent | bc4a68f21f43c2e37346cf5a1f37c19a53b540c2 (diff) | |
download | xen-2bd22d3c9919029034d51322e301ca158137994a.tar.gz xen-2bd22d3c9919029034d51322e301ca158137994a.tar.bz2 xen-2bd22d3c9919029034d51322e301ca158137994a.zip |
x86: trampoline cleanup
To make future changes less error prone, and to slightly simplify a
possible future conversion to a relocatable trampoline even for the
multiboot path (pretty desirable given that we had to change the
trampoline base a number of times to escape collisions with firmware
placed data),
- remove final uses of bootsym_phys() from trampoline.S, allowing the
symbol to be undefined before including this file (to make sure no
new references get added)
- replace two easy to deal with uses of bootsym_phys() in head.S
- remove an easy to replace reference to BOOT_TRAMPOLINE
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/arch/x86/boot/trampoline.S')
-rw-r--r-- | xen/arch/x86/boot/trampoline.S | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/xen/arch/x86/boot/trampoline.S b/xen/arch/x86/boot/trampoline.S index 37f64cf54f..dc4fd0603a 100644 --- a/xen/arch/x86/boot/trampoline.S +++ b/xen/arch/x86/boot/trampoline.S @@ -132,7 +132,7 @@ high_start: .code32 trampoline_boot_cpu_entry: - cmpb $0,bootsym_phys(skip_realmode) + cmpb $0,bootsym_rel(skip_realmode,5) jnz .Lskip_realmode /* Load pseudo-real-mode segments. */ @@ -152,7 +152,7 @@ trampoline_boot_cpu_entry: /* Load proper real-mode values into %cs, %ds, %es and %ss. */ ljmp $(BOOT_TRAMPOLINE>>4),$bootsym(1f) -1: mov $(BOOT_TRAMPOLINE>>4),%ax +1: mov %cs,%ax mov %ax,%ds mov %ax,%es mov %ax,%ss @@ -195,7 +195,7 @@ trampoline_boot_cpu_entry: lmsw %ax # CR0.PE = 1 (enter protected mode) /* Load proper protected-mode values into all segment registers. */ - ljmpl $BOOT_CS32,$bootsym_phys(1f) + ljmpl $BOOT_CS32,$bootsym_rel(1f,6) .code32 1: mov $BOOT_DS,%eax mov %eax,%ds |