aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/realmode/rm
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@linux.intel.com>2012-05-08 14:22:33 -0400
committerH. Peter Anvin <hpa@linux.intel.com>2012-05-08 14:48:03 -0400
commit024742861124ef26dae4cfc620250f8f47ac934a (patch)
tree5c68582d406e70bd08e59afd3b23d50410264280 /arch/x86/realmode/rm
parent487f50ffeb142d8f86fff6e43a8852ce3d46c173 (diff)
x86, realmode: Move bits to the proper sections in trampoline_64.S
Move various bits to the sections they really belong in in trampoline_64.S. Use GLOBAL() rather than ENTRY() for data objects: ENTRY() should only be used with code and forces alignment to 16 bytes. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> Link: http://lkml.kernel.org/r/1336501366-28617-11-git-send-email-jarkko.sakkinen@intel.com
Diffstat (limited to 'arch/x86/realmode/rm')
-rw-r--r--arch/x86/realmode/rm/trampoline_64.S10
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/x86/realmode/rm/trampoline_64.S b/arch/x86/realmode/rm/trampoline_64.S
index 063da008d52..66c58cf1550 100644
--- a/arch/x86/realmode/rm/trampoline_64.S
+++ b/arch/x86/realmode/rm/trampoline_64.S
@@ -80,6 +80,7 @@ no_longmode:
80 jmp no_longmode 80 jmp no_longmode
81#include "../kernel/verify_cpu.S" 81#include "../kernel/verify_cpu.S"
82 82
83 .section ".text32","ax"
83 .code32 84 .code32
84 .balign 4 85 .balign 4
85ENTRY(startup_32) 86ENTRY(startup_32)
@@ -114,6 +115,7 @@ ENTRY(startup_32)
114 */ 115 */
115 ljmpl *(pa_startup_64_vector) 116 ljmpl *(pa_startup_64_vector)
116 117
118 .section ".text64","ax"
117 .code64 119 .code64
118 .balign 4 120 .balign 4
119ENTRY(startup_64) 121ENTRY(startup_64)
@@ -123,7 +125,8 @@ ENTRY(startup_64)
123 addl %esi, %eax 125 addl %esi, %eax
124 jmp *%rax 126 jmp *%rax
125 127
126 # Careful these need to be in the same 64K segment as the above; 128 .section ".rodata","a"
129 .balign 16
127tidt: 130tidt:
128 .word 0 # idt limit = 0 131 .word 0 # idt limit = 0
129 .word 0, 0 # idt base = 0L 132 .word 0, 0 # idt base = 0L
@@ -153,9 +156,8 @@ startup_64_vector:
153 .word __KERNEL_CS, 0 156 .word __KERNEL_CS, 0
154 157
155 .data 158 .data
156
157 .balign 4 159 .balign 4
158ENTRY(trampoline_status) 160GLOBAL(trampoline_status)
159 .long 0 161 .long 0
160 162
161trampoline_stack: 163trampoline_stack:
@@ -164,7 +166,7 @@ trampoline_stack_end:
164 166
165 .globl level3_ident_pgt 167 .globl level3_ident_pgt
166 .globl level3_kernel_pgt 168 .globl level3_kernel_pgt
167ENTRY(trampoline_level4_pgt) 169GLOBAL(trampoline_level4_pgt)
168 level3_ident_pgt: .quad 0 170 level3_ident_pgt: .quad 0
169 .fill 510,8,0 171 .fill 510,8,0
170 level3_kernel_pgt: .quad 0 172 level3_kernel_pgt: .quad 0