ARM: Clean up linker script using new linker script macros.
This patch is mostly a straightforward translation. The primary side effect to the resulting vmlinux should be to increase the alignment on the initramfs to the standard PAGE_SIZE from 32 bytes. Signed-off-by: Nelson Elhage <nelhage@ksplice.com> Signed-off-by: Tim Abbott <tabbott@ksplice.com> Acked-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Родитель
2abc1c50b6
Коммит
78d7530ac3
|
@ -40,42 +40,30 @@ SECTIONS
|
||||||
__tagtable_begin = .;
|
__tagtable_begin = .;
|
||||||
*(.taglist.init)
|
*(.taglist.init)
|
||||||
__tagtable_end = .;
|
__tagtable_end = .;
|
||||||
. = ALIGN(16);
|
|
||||||
__setup_start = .;
|
INIT_SETUP(16)
|
||||||
*(.init.setup)
|
|
||||||
__setup_end = .;
|
|
||||||
__early_begin = .;
|
__early_begin = .;
|
||||||
*(.early_param.init)
|
*(.early_param.init)
|
||||||
__early_end = .;
|
__early_end = .;
|
||||||
__initcall_start = .;
|
|
||||||
INITCALLS
|
INIT_CALLS
|
||||||
__initcall_end = .;
|
CON_INITCALL
|
||||||
__con_initcall_start = .;
|
SECURITY_INITCALL
|
||||||
*(.con_initcall.init)
|
INIT_RAM_FS
|
||||||
__con_initcall_end = .;
|
|
||||||
__security_initcall_start = .;
|
|
||||||
*(.security_initcall.init)
|
|
||||||
__security_initcall_end = .;
|
|
||||||
#ifdef CONFIG_BLK_DEV_INITRD
|
|
||||||
. = ALIGN(32);
|
|
||||||
__initramfs_start = .;
|
|
||||||
usr/built-in.o(.init.ramfs)
|
|
||||||
__initramfs_end = .;
|
|
||||||
#endif
|
|
||||||
. = ALIGN(PAGE_SIZE);
|
|
||||||
__per_cpu_load = .;
|
|
||||||
__per_cpu_start = .;
|
|
||||||
*(.data.percpu.page_aligned)
|
|
||||||
*(.data.percpu)
|
|
||||||
*(.data.percpu.shared_aligned)
|
|
||||||
__per_cpu_end = .;
|
|
||||||
#ifndef CONFIG_XIP_KERNEL
|
#ifndef CONFIG_XIP_KERNEL
|
||||||
__init_begin = _stext;
|
__init_begin = _stext;
|
||||||
INIT_DATA
|
INIT_DATA
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
PERCPU(PAGE_SIZE)
|
||||||
|
|
||||||
|
#ifndef CONFIG_XIP_KERNEL
|
||||||
. = ALIGN(PAGE_SIZE);
|
. = ALIGN(PAGE_SIZE);
|
||||||
__init_end = .;
|
__init_end = .;
|
||||||
#endif
|
#endif
|
||||||
}
|
|
||||||
|
|
||||||
/DISCARD/ : { /* Exit code and data */
|
/DISCARD/ : { /* Exit code and data */
|
||||||
EXIT_TEXT
|
EXIT_TEXT
|
||||||
|
@ -155,7 +143,7 @@ SECTIONS
|
||||||
* first, the init task union, aligned
|
* first, the init task union, aligned
|
||||||
* to an 8192 byte boundary.
|
* to an 8192 byte boundary.
|
||||||
*/
|
*/
|
||||||
*(.data.init_task)
|
INIT_TASK_DATA(THREAD_SIZE)
|
||||||
|
|
||||||
#ifdef CONFIG_XIP_KERNEL
|
#ifdef CONFIG_XIP_KERNEL
|
||||||
. = ALIGN(PAGE_SIZE);
|
. = ALIGN(PAGE_SIZE);
|
||||||
|
@ -165,17 +153,8 @@ SECTIONS
|
||||||
__init_end = .;
|
__init_end = .;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
. = ALIGN(PAGE_SIZE);
|
NOSAVE_DATA
|
||||||
__nosave_begin = .;
|
CACHELINE_ALIGNED_DATA(32)
|
||||||
*(.data.nosave)
|
|
||||||
. = ALIGN(PAGE_SIZE);
|
|
||||||
__nosave_end = .;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* then the cacheline aligned data
|
|
||||||
*/
|
|
||||||
. = ALIGN(32);
|
|
||||||
*(.data.cacheline_aligned)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The exception fixup table (might need resorting at runtime)
|
* The exception fixup table (might need resorting at runtime)
|
||||||
|
@ -254,20 +233,10 @@ SECTIONS
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
.bss : {
|
BSS_SECTION(0, 0, 0)
|
||||||
__bss_start = .; /* BSS */
|
|
||||||
*(.bss)
|
|
||||||
*(COMMON)
|
|
||||||
__bss_stop = .;
|
|
||||||
_end = .;
|
_end = .;
|
||||||
}
|
|
||||||
/* Stabs debugging sections. */
|
STABS_DEBUG
|
||||||
.stab 0 : { *(.stab) }
|
|
||||||
.stabstr 0 : { *(.stabstr) }
|
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
|
||||||
.stab.index 0 : { *(.stab.index) }
|
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче