[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20120320142808.dbc31fedf291bb3cc8cdecaa@canb.auug.org.au>
Date:	Tue, 20 Mar 2012 14:28:08 +1100
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	Benjamin Herrenschmidt <benh@...nel.crashing.org>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Suzuki Poulose <suzuki@...ibm.com>, tony@...eyournoodle.com,
	ppc-dev <linuxppc-dev@...ts.ozlabs.org>
Subject: linux-next: build failure after merge of the pci tree (actually
 powerpc tree related)
Hi Ben,
After merging the pci tree, today's linux-next build (powerpc ppc64_defconfig)
failed like this:
powerpc64-linux-ld: section .text loaded at [0000000000e00000,0000000000e0721b] overlaps section .kernel:dtb loaded at [0000000000e00000,0000000000e0066f]
I have applied this patch for today (thanks to Tony Breeds and David
Gibson):
From: Stephen Rothwell <sfr@...b.auug.org.au>
Date: Tue, 20 Mar 2012 14:13:51 +1100
Subject: [PATCH] powerpc: do not adjust the load address for ps3
Commit c55aef0e5bc6 "powerpc/boot: Change the load address for the wrapper
to fit the kernel" adjusted the laod address if the uncompressed kernel
was too large.  Ps3 does not compress the kernel and uses a different
linker script, so do not adjust the load address in that case.
fixes this build error:
powerpc64-linux-ld: section .text loaded at [0000000000e00000,0000000000e0721b] overlaps section .kernel:dtb loaded at [0000000000e00000,0000000000e0066f]
Signed-off-by: Stephen Rothwell <sfr@...b.auug.org.au>
---
 arch/powerpc/boot/wrapper |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/arch/powerpc/boot/wrapper b/arch/powerpc/boot/wrapper
index f090e6d..6761c74 100755
--- a/arch/powerpc/boot/wrapper
+++ b/arch/powerpc/boot/wrapper
@@ -144,6 +144,7 @@ tmp=$tmpdir/zImage.$$.o
 ksection=.kernel:vmlinux.strip
 isection=.kernel:initrd
 link_address='0x400000'
+make_space=y
 
 case "$platform" in
 pseries)
@@ -210,6 +211,7 @@ ps3)
     ksection=.kernel:vmlinux.bin
     isection=.kernel:initrd
     link_address=''
+    make_space=n
     pie=
     ;;
 ep88xc|ep405|ep8248e)
@@ -278,17 +280,19 @@ else
     rm -f $vmz.$$
 fi
 
-# Round the size to next higher MB limit
-round_size=$(((strip_size + 0xfffff) & 0xfff00000))
+if [ "$make_space" = "y" ]; then
+	# Round the size to next higher MB limit
+	round_size=$(((strip_size + 0xfffff) & 0xfff00000))
 
-round_size=0x$(printf "%x" $round_size)
-link_addr=$(printf "%d" $link_address)
+	round_size=0x$(printf "%x" $round_size)
+	link_addr=$(printf "%d" $link_address)
 
-if [ $link_addr -lt $strip_size ]; then
-    echo "INFO: Uncompressed kernel (size 0x$(printf "%x\n" $strip_size))" \
-		"overlaps the address of the wrapper($link_address)"
-    echo "INFO: Fixing the link_address of wrapper to ($round_size)"
-    link_address=$round_size
+	if [ $link_addr -lt $strip_size ]; then
+	    echo "INFO: Uncompressed kernel (size 0x$(printf "%x\n" $strip_size))" \
+			"overlaps the address of the wrapper($link_address)"
+	    echo "INFO: Fixing the link_address of wrapper to ($round_size)"
+	    link_address=$round_size
+	fi
 fi
 
 vmz="$vmz$gzip"
-- 
1.7.9.1
-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists