Please revert edada399 and 9203fc9c

Tim Abbott tabbott at MIT.EDU
Wed Apr 29 01:47:15 EST 2009

> Please revert commits edada399 ("powerpc: Use TEXT_TEXT macro in
> linker script.") and 9203fc9c ("powerpc: Use __REF macro instead of
> old .text.init.refok."), which depends on edada399.


Sorry for breaking the build.  I will be sure to CC you and 
linuxppc-dev at on future powerpc patches in this section name 
cleanup project.

I think just reverting commits edada399 and 9203fc9c will cause a section 
mismatch warning since commit 27b18332 removed the support code for the 
.text.init.refok section.  The following patch I believe should fix this 
by effectively reverting just commit edada399.  Can someone who has a 
64-bit powerpc machine confirm?

	-Tim Abbott


powerpc: Revert switch to TEXT_TEXT in linker script

Commit edada399 broke the build on 64-bit powerpc because it moved the
__ftr_alt_* sections of a file away from the .text section, causing
link failures due to relative conditional branch targets being too far
away from the branch instructions.  This happens on pretty much all
64-bit powerpc configs.

This change reverts commit edada399 while preserving the update from
the *.refok sections to .ref.text that has happened since.

Signed-off-by: Tim Abbott <tabbott at>
 arch/powerpc/kernel/ |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/ b/arch/powerpc/kernel/
index 433ae11..a047a6c 100644
--- a/arch/powerpc/kernel/
+++ b/arch/powerpc/kernel/
@@ -54,8 +54,8 @@ SECTIONS
 		_text = .;
-		*(.fixup __ftr_alt_*)
+		/* careful! __ftr_alt_* sections need to be close to .text */
+		*(.text .fixup __ftr_alt_* .ref.text)

More information about the Linuxppc-dev mailing list