linux/arch/x86/boot
H. Peter Anvin 5b11f1cee5 x86, boot: straighten out ranges to copy/zero in compressed/head*.S
Both on 32 and 64 bits, we copy all the way up to the end of bss,
except that on 64 bits there is a hack to avoid copying on top of the
page tables.  There is no point in copying bss at all, especially
since we are just about to zero it all anyway.

To clean up and unify the handling, we now do:

  - copy from startup_32 to _bss.
  - zero from _bss to _ebss.
  - the _ebss symbol is aligned to an 8-byte boundary.
  - the page tables are moved to a separate section.

Use _bss as the copy endpoint since _edata may be misaligned.

[ Impact: cleanup, trivial performance improvement ]

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-05-08 17:18:10 -07:00
..
compressed x86, boot: straighten out ranges to copy/zero in compressed/head*.S 2009-05-08 17:18:10 -07:00
tools x86: remove zImage support 2009-03-11 11:00:00 -07:00
.gitignore Update .gitignore files 2008-04-25 12:27:32 -07:00
Makefile x86, setup: compile with -DDISABLE_BRANCH_PROFILING 2009-04-03 16:34:45 +02:00
a20.c x86: remove the Voyager 32-bit subarch 2009-02-23 00:54:01 +01:00
apm.c x86: remove pointless comments 2008-04-19 19:19:54 +02:00
bitops.h x86: remove pointless comments 2008-04-19 19:19:54 +02:00
boot.h x86: remove the Voyager 32-bit subarch 2009-02-23 00:54:01 +01:00
cmdline.c x86: remove pointless comments 2008-04-19 19:19:54 +02:00
code16gcc.h i386: move boot 2007-10-11 11:16:45 +02:00
copy.S x86: copy.S - use GLOBAL,ENDPROC macros 2009-02-19 17:13:00 +01:00
cpu.c x86 setup: handle more than 8 CPU flag words 2008-09-16 15:09:26 -07:00
cpucheck.c x86: boot: stub out unimplemented CPU feature words 2008-09-05 16:13:44 -07:00
edd.c Revert "x86: fix ghost EDD devices in /sys again" 2008-10-03 10:22:33 -07:00
header.S x86: remove zImage support 2009-03-11 11:00:00 -07:00
install.sh x86: remove pointless comments 2008-04-19 19:19:54 +02:00
main.c x86: remove the Voyager 32-bit subarch 2009-02-23 00:54:01 +01:00
mca.c x86: remove pointless comments 2008-04-19 19:19:54 +02:00
memory.c x86, setup: guard against pre-ACPI 3 e820 code not updating %ecx 2009-04-01 11:35:00 -07:00
mkcpustr.c x86 setup: handle more than 8 CPU flag words 2008-09-16 15:09:26 -07:00
mtools.conf.in i386: move boot 2007-10-11 11:16:45 +02:00
pm.c x86: remove zImage support 2009-03-11 11:00:00 -07:00
pmjump.S x86, setup: move 32-bit code to .text32 2009-03-17 15:26:06 -07:00
printf.c x86: boot/printfc use NULL instead 0 2008-05-25 08:58:25 +02:00
setup.ld x86, setup: move 32-bit code to .text32 2009-03-17 15:26:06 -07:00
string.c x86: remove pointless comments 2008-04-19 19:19:54 +02:00
tty.c x86: use limited register constraint for setnz 2008-11-25 15:38:03 +01:00
version.c x86: remove pointless comments 2008-04-19 19:19:54 +02:00
vesa.h x86-boot: don't request VBE2 information 2008-03-07 16:39:14 +01:00
video-bios.c x86: make variables static 2008-10-22 07:31:28 +02:00
video-mode.c x86: move suspend wakeup code to C 2008-04-17 17:41:37 +02:00
video-vesa.c x86 setup: fix asm constraints in vesa_store_edid 2009-01-30 23:55:25 +01:00
video-vga.c x86, setup: un-resequence mode setting for VGA 80x34 and 80x60 modes 2009-04-07 10:59:25 -07:00
video.c x86: boot - fix sparse warnings 2008-11-23 19:58:58 +01:00
video.h x86: remove pointless comments 2008-04-19 19:19:54 +02:00