Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -23,6 +23,5 @@ EXPORT_SYMBOL(init_task);
 * in etrap.S which assumes it.
 */
union thread_union init_thread_union
	__attribute__((section (".text\"\n\t#")))
	__attribute__((aligned (THREAD_SIZE)))
	__attribute__((section (".data.init_task")))
	= { INIT_THREAD_INFO(init_task) };
+9 −0
Original line number Diff line number Diff line
/* ld script for sparc32/sparc64 kernel */

#include <asm-generic/vmlinux.lds.h>

#include <asm/page.h>
#include <asm/thread_info.h>

#ifdef CONFIG_SPARC32
#define INITIAL_ADDRESS  0x10000 + SIZEOF_HEADERS
@@ -65,8 +67,15 @@ SECTIONS
	.data.read_mostly : {
		*(.data.read_mostly)
	}
	/* End of data section */
	_edata = .;
	PROVIDE (edata = .);

	/* init_task */
	. = ALIGN(THREAD_SIZE);
	.data.init_task : {
		*(.data.init_task)
	}
	.fixup : {
		__start___fixup = .;
		*(.fixup)