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

Commit 1604d79d authored by Russell King's avatar Russell King
Browse files

ARM: vmlinux.lds: rearrange .init output section



Keep the various linker tables as separate output sections rather
than combining them together into one big .init section.  This
makes the 'vmlinux' easier to see what is placed where.

Acked-by: default avatarNicolas Pitre <nicolas.pitre@linaro.org>
Tested-by: default avatarStephen Boyd <sboyd@codeaurora.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 39df8887
Loading
Loading
Loading
Loading
+29 −18
Original line number Diff line number Diff line
@@ -65,48 +65,59 @@ SECTIONS
#else
	. = PAGE_OFFSET + TEXT_OFFSET;
#endif

	.init : {			/* Init code and data		*/
	.head.text : {
		_stext = .;
		_sinittext = .;
		HEAD_TEXT
			INIT_TEXT
	}
	INIT_TEXT_SECTION(8)
	.exit.text : {
		ARM_EXIT_KEEP(EXIT_TEXT)
		_einittext = .;
	}
	.init.proc.info : {
		ARM_CPU_DISCARD(PROC_INFO)
	}
	.init.arch.info : {
		__arch_info_begin = .;
		*(.arch.info.init)
		__arch_info_end = .;
	}
	.init.tagtable : {
		__tagtable_begin = .;
		*(.taglist.init)
		__tagtable_end = .;
	}
#ifdef CONFIG_SMP_ON_UP
	.init.smpalt : {
		__smpalt_begin = .;
		*(.alt.smp.init)
		__smpalt_end = .;
	}
#endif

	.init.pv_table : {
		__pv_table_begin = .;
		*(.pv_table)
		__pv_table_end = .;

	}
	.init.data : {
#ifndef CONFIG_XIP_KERNEL
		INIT_DATA
#endif
		INIT_SETUP(16)

		INIT_CALLS
		CON_INITCALL
		SECURITY_INITCALL
		INIT_RAM_FS

	}
#ifndef CONFIG_XIP_KERNEL
		__init_begin = _stext;
		INIT_DATA
	.exit.data : {
		ARM_EXIT_KEEP(EXIT_DATA)
#endif
	}
#endif

	PERCPU_SECTION(32)

#ifndef CONFIG_XIP_KERNEL
	__init_begin = _stext;
	. = ALIGN(PAGE_SIZE);
	__init_end = .;
#endif