diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-08-24 12:25:44 +0200 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-08-24 12:25:54 +0200 | 
| commit | 5f9ece02401116b29eb04396b99ea092acb75dd8 (patch) | |
| tree | e10386e2dc63c275646b4eb0bed857da7bf86c6a /include/asm-generic/vmlinux.lds.h | |
| parent | 9f51e24ee8b5a1595b6a5ac0c2be278a16488e75 (diff) | |
| parent | 422bef879e84104fee6dc68ded0e371dbeb5f88e (diff) | |
| download | olio-linux-3.10-5f9ece02401116b29eb04396b99ea092acb75dd8.tar.xz olio-linux-3.10-5f9ece02401116b29eb04396b99ea092acb75dd8.zip  | |
Merge commit 'v2.6.31-rc7' into x86/cleanups
Merge reason: we were on -rc1 before - go up to -rc7
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-generic/vmlinux.lds.h')
| -rw-r--r-- | include/asm-generic/vmlinux.lds.h | 31 | 
1 files changed, 15 insertions, 16 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index dccdbed0584..6ad76bf5fb4 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h @@ -30,9 +30,7 @@   *	EXCEPTION_TABLE(...)   *	NOTES   * - *	__bss_start = .; - *	BSS_SECTION(0, 0) - *	__bss_stop = .; + *	BSS_SECTION(0, 0, 0)   *	_end = .;   *   *	/DISCARD/ : { @@ -191,7 +189,7 @@  	. = ALIGN(align);						\  	*(.data.cacheline_aligned) -#define INIT_TASK(align)						\ +#define INIT_TASK_DATA(align)						\  	. = ALIGN(align);						\  	*(.data.init_task) @@ -434,10 +432,10 @@  /*   * Init task   */ -#define INIT_TASK_DATA(align)						\ +#define INIT_TASK_DATA_SECTION(align)					\  	. = ALIGN(align);						\  	.data.init_task : {						\ -		INIT_TASK						\ +		INIT_TASK_DATA(align)					\  	}  #ifdef CONFIG_CONSTRUCTORS @@ -489,7 +487,8 @@   * bss (Block Started by Symbol) - uninitialized data   * zeroed during startup   */ -#define SBSS								\ +#define SBSS(sbss_align)						\ +	. = ALIGN(sbss_align);						\  	.sbss : AT(ADDR(.sbss) - LOAD_OFFSET) {				\  		*(.sbss)						\  		*(.scommon)						\ @@ -498,12 +497,10 @@  #define BSS(bss_align)							\  	. = ALIGN(bss_align);						\  	.bss : AT(ADDR(.bss) - LOAD_OFFSET) {				\ -		VMLINUX_SYMBOL(__bss_start) = .;			\  		*(.bss.page_aligned)					\  		*(.dynbss)						\  		*(.bss)							\  		*(COMMON)						\ -		VMLINUX_SYMBOL(__bss_stop) = .;				\  	}  /* @@ -705,15 +702,15 @@   * matches the requirment of PAGE_ALIGNED_DATA.   *   * use 0 as page_align if page_aligned data is not used */ -#define RW_DATA_SECTION(cacheline, nosave, pagealigned, inittask)	\ +#define RW_DATA_SECTION(cacheline, pagealigned, inittask)		\  	. = ALIGN(PAGE_SIZE);						\  	.data : AT(ADDR(.data) - LOAD_OFFSET) {				\ -		INIT_TASK(inittask)					\ +		INIT_TASK_DATA(inittask)				\  		CACHELINE_ALIGNED_DATA(cacheline)			\  		READ_MOSTLY_DATA(cacheline)				\  		DATA_DATA						\  		CONSTRUCTORS						\ -		NOSAVE_DATA(nosave)					\ +		NOSAVE_DATA						\  		PAGE_ALIGNED_DATA(pagealigned)				\  	} @@ -735,8 +732,10 @@  		INIT_RAM_FS						\  	} -#define BSS_SECTION(sbss_align, bss_align)				\ -	SBSS								\ +#define BSS_SECTION(sbss_align, bss_align, stop_align)			\ +	. = ALIGN(sbss_align);						\ +	VMLINUX_SYMBOL(__bss_start) = .;				\ +	SBSS(sbss_align)						\  	BSS(bss_align)							\ -	. = ALIGN(4); - +	. = ALIGN(stop_align);						\ +	VMLINUX_SYMBOL(__bss_stop) = .;  |