Commit b74e34db authored by Sam Ravnborg's avatar Sam Ravnborg Committed by David S. Miller

sparc: use .data.init_task section for init_thread_union

Use a dedicated aligned section for the init_thread_union
variable and declare this section in vmlinux.lds.

This align sparc with most other architectures.  Eventually this allow
the init_task bits to be unified across all architectures.
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 92d9091f
...@@ -23,6 +23,5 @@ EXPORT_SYMBOL(init_task); ...@@ -23,6 +23,5 @@ EXPORT_SYMBOL(init_task);
* in etrap.S which assumes it. * in etrap.S which assumes it.
*/ */
union thread_union init_thread_union union thread_union init_thread_union
__attribute__((section (".text\"\n\t#"))) __attribute__((section (".data.init_task")))
__attribute__((aligned (THREAD_SIZE)))
= { INIT_THREAD_INFO(init_task) }; = { INIT_THREAD_INFO(init_task) };
/* ld script for sparc32/sparc64 kernel */ /* ld script for sparc32/sparc64 kernel */
#include <asm-generic/vmlinux.lds.h> #include <asm-generic/vmlinux.lds.h>
#include <asm/page.h> #include <asm/page.h>
#include <asm/thread_info.h>
#ifdef CONFIG_SPARC32 #ifdef CONFIG_SPARC32
#define INITIAL_ADDRESS 0x10000 + SIZEOF_HEADERS #define INITIAL_ADDRESS 0x10000 + SIZEOF_HEADERS
...@@ -65,8 +67,15 @@ SECTIONS ...@@ -65,8 +67,15 @@ SECTIONS
.data.read_mostly : { .data.read_mostly : {
*(.data.read_mostly) *(.data.read_mostly)
} }
/* End of data section */
_edata = .; _edata = .;
PROVIDE (edata = .); PROVIDE (edata = .);
/* init_task */
. = ALIGN(THREAD_SIZE);
.data.init_task : {
*(.data.init_task)
}
.fixup : { .fixup : {
__start___fixup = .; __start___fixup = .;
*(.fixup) *(.fixup)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment