Skip to contentSkip to conversation

at91bootstrap: fix gcc-4.6.x overlap linker issue

PATCH Superseded Grégory Hermant 2 participants 3 messages Oct 10, 2012 – Oct 11, 2012 Arm/Microchip (AT91) SoC support

lore
Share & tools
lore
#0 lore raw

PATCH v3 1/1 at91bootstrap: fix gcc-4.6.x overlap linker issue

Things always happen in threes...
This patch fixes an issue detected in the linking stage of the at91bootstraploader from gcc-4.6.x release. Indeed from this gcc release the linking stage fails due to an overlap between text.startup and data section. To fix this issue we need to modify the linker script in order to add the text.startup input section into the text output section.

---
 ...at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch |   26 ++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 boot/at91bootstrap/at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch
boot/at91bootstrap/at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch new file +24 -0
new file mode 100644
index 0000000..4222b6c
@@ -0,0 +1,26 @@
+From 1a26120767aed8a2660fe840955d5d66d3469ce2 Mon Sep 17 00:00:00 2001
+From: Gregory Hermant <[email protected]>
+Date: Wed, 10 Oct 2012 08:45:46 +0200
+Subject: [PATCH] at91bootstrap: fix overlap linker issue
+
+
+Signed-off-by: Gregory Hermant <[email protected]>
+---
+ elf32-littlearm.lds |    1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/elf32-littlearm.lds b/elf32-littlearm.lds
+index a33952f..4f3ba25 100644
+--- a/elf32-littlearm.lds
++++ b/elf32-littlearm.lds
+@@ -7,6 +7,7 @@ SECTIONS
+ 	.text : { + 		_stext = .;
+ 		*(.text)
++		*(.text*)
+ 		*(.rodata)                 /* read-only data (constants) */
+ 		*(.rodata*)
+ 		. = ALIGN(4);
+-- +1.7.9.5
+
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH v3 1/1 at91bootstrap: fix gcc-4.6.x overlap linker issue

Gr?gory,

Quoted 11 lines · Gr?gory Hermant

Things always happen in threes...
This patch fixes an issue detected in the linking stage of the at91bootstraploader from gcc-4.6.x release. Indeed from this gcc release the linking stage fails due to an overlap between text.startup and data section. To fix this issue we need to modify the linker script in order to add the text.startup input section into the text output section.

---
 ...at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch |   26 ++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 boot/at91bootstrap/at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch

Unfortunately, it still cannot be applied as is:

*) All the text before the --- separator goes into the commit log (so it remains forever in the Buildroot commit history). Therefore, it shouldn't contain "personal" comments such as "Things always happen in threes"

*) The commit log text should be wrapped at ~80 columns

In addition to that, most of the commit log text would benefit from being copy/pasted into the description of the at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch patch.

Of course, Peter can probably fix those minor problems while committing, but I thought it would be useful to describe what's still not perfect with your patch.

Best regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#2 lore raw

PATCH v3 1/1 at91bootstrap: fix gcc-4.6.x overlap linker issue

Hi thomas,
Thanks very much for your feedback.
gregory

Le 10/10/2012 13:19, Thomas Petazzoni a ?crit :

Quoted 36 lines

Gr?gory,

Quoted 11 lines · Gr?gory Hermant

Things always happen in threes...
This patch fixes an issue detected in the linking stage of the at91bootstraploader from gcc-4.6.x release. Indeed from this gcc release the linking stage fails due to an overlap between text.startup and data section. To fix this issue we need to modify the linker script in order to add the text.startup input section into the text output section.

---
 ...at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch |   26 ++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 boot/at91bootstrap/at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch

Unfortunately, it still cannot be applied as is:

*) All the text before the --- separator goes into the commit log (so it remains forever in the Buildroot commit history). Therefore, it shouldn't contain "personal" comments such as "Things always happen in threes"

*) The commit log text should be wrapped at ~80 columns

In addition to that, most of the commit log text would benefit from being copy/pasted into the description of the at91bootstrap-1.16-gcc-4.6.x-ldscript-fix.patch patch.

Of course, Peter can probably fix those minor problems while committing, but I thought it would be useful to describe what's still not perfect with your patch.

Best regards,

Thomas