linux-parisc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] PARISC: fix boot failure on 32-bit systems caused by branch stubs placed before .text
@ 2012-05-17 14:34 John David Anglin
  0 siblings, 0 replies; only message in thread
From: John David Anglin @ 2012-05-17 14:34 UTC (permalink / raw)
  To: linux-parisc; +Cc: James Bottomley, Guy Martin

[-- Attachment #1: Type: text/plain, Size: 486 bytes --]

In certain configurations, the resulting kernel becomes too large to 
boot because
the linker places the long branch stubs for the merged .text section at 
the very start
of the image.  As a result, the initial transfer of control jumps to an 
unexpected
location.  Fix this by placing the head text in a separate section so 
the stubs for
.text are not at the start of the image.

Signed-off-by: John David Anglin <dave.anglin@bell.net>

-- 
John David Anglin    dave.anglin@bell.net


[-- Attachment #2: vmlinux.lds.S.diff.txt --]
[-- Type: text/plain, Size: 681 bytes --]

 arch/parisc/kernel/vmlinux.lds.S |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/parisc/kernel/vmlinux.lds.S b/arch/parisc/kernel/vmlinux.lds.S
index fa6f2b8..64a9998 100644
--- a/arch/parisc/kernel/vmlinux.lds.S
+++ b/arch/parisc/kernel/vmlinux.lds.S
@@ -50,8 +50,10 @@ SECTIONS
 	. = KERNEL_BINARY_TEXT_START;
 
 	_text = .;		/* Text and read-only data */
-	.text ALIGN(16) : {
+	.head ALIGN(16) : {
 		HEAD_TEXT
+	} = 0
+	.text ALIGN(16) : {
 		TEXT_TEXT
 		SCHED_TEXT
 		LOCK_TEXT
@@ -65,7 +67,7 @@ SECTIONS
 		*(.fixup)
 		*(.lock.text)		/* out-of-line lock text */
 		*(.gnu.warning)
-	} = 0
+	}
 	/* End of text section */
 	_etext = .;
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2012-05-17 14:34 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-17 14:34 [PATCH] PARISC: fix boot failure on 32-bit systems caused by branch stubs placed before .text John David Anglin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).