提交 8035d3ea 编写于 作者: V Vivek Goyal 提交者: Andi Kleen

[PATCH] x86-64: Extend bzImage protocol for relocatable bzImage

o Extend the bzImage protocol (same as i386) to allow bzImage loaders to
  load the protected mode kernel at non-1MB address. Now protected mode
  component is relocatable and can be loaded at non-1MB addresses.

o As of today kdump uses it to run a second kernel from a reserved memory
  area.
Signed-off-by: NVivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: NVivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: NAndi Kleen <ak@suse.de>
上级 6a50a664
...@@ -80,7 +80,7 @@ start: ...@@ -80,7 +80,7 @@ start:
# This is the setup header, and it must start at %cs:2 (old 0x9020:2) # This is the setup header, and it must start at %cs:2 (old 0x9020:2)
.ascii "HdrS" # header signature .ascii "HdrS" # header signature
.word 0x0204 # header version number (>= 0x0105) .word 0x0205 # header version number (>= 0x0105)
# or else old loadlin-1.5 will fail) # or else old loadlin-1.5 will fail)
realmode_swtch: .word 0, 0 # default_switch, SETUPSEG realmode_swtch: .word 0, 0 # default_switch, SETUPSEG
start_sys_seg: .word SYSSEG start_sys_seg: .word SYSSEG
...@@ -155,7 +155,16 @@ cmd_line_ptr: .long 0 # (Header version 0x0202 or later) ...@@ -155,7 +155,16 @@ cmd_line_ptr: .long 0 # (Header version 0x0202 or later)
# low memory 0x10000 or higher. # low memory 0x10000 or higher.
ramdisk_max: .long 0xffffffff ramdisk_max: .long 0xffffffff
kernel_alignment: .long 0x200000 # physical addr alignment required for
# protected mode relocatable kernel
#ifdef CONFIG_RELOCATABLE
relocatable_kernel: .byte 1
#else
relocatable_kernel: .byte 0
#endif
pad2: .byte 0
pad3: .word 0
trampoline: call start_of_setup trampoline: call start_of_setup
.align 16 .align 16
# The offset at this point is 0x240 # The offset at this point is 0x240
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册