Message ID | 20140611122104.GA24569@pobox.suse.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Dne 11.6.2014 14:21, Michal Marek napsal(a): > On Wed, Jun 11, 2014 at 10:24:24AM +0200, Michal Marek wrote: >> Dne 11.6.2014 08:02, Mike Qiu napsal(a): >>> make[1]: Circular arch/powerpc/boot/zImage.lds.S <- >>> arch/powerpc/boot/zImage.lds dependency dropped. >>> make[1]: Circular arch/powerpc/boot/zImage.coff.lds.S <- >>> arch/powerpc/boot/zImage.lds dependency dropped. >>> make[1]: Circular arch/powerpc/boot/zImage.coff.lds.S <- >>> arch/powerpc/boot/zImage.coff.lds dependency dropped. >>> make[1]: Circular arch/powerpc/boot/zImage.ps3.lds.S <- >>> arch/powerpc/boot/zImage.lds dependency dropped. >>> make[1]: Circular arch/powerpc/boot/zImage.ps3.lds.S <- >>> arch/powerpc/boot/zImage.coff.lds dependency dropped. >>> make[1]: Circular arch/powerpc/boot/zImage.ps3.lds.S <- >>> arch/powerpc/boot/zImage.ps3.lds dependency dropped. >>> WRAP arch/powerpc/boot/zImage.ps3.lds.S >>> INFO: Uncompressed kernel (size 0x14d0db8) overlaps the address of the >>> wrapper(0x400000) >>> INFO: Fixing the link_address of wrapper to (0x1500000) >>> ld: cannot open linker script file arch/powerpc/boot/zImage.lds: No such >>> file or directory >>> make[1]: *** [arch/powerpc/boot/zImage.ps3.lds.S] Error 1 >>> make: *** [zImage] Error 2 >>> make: *** Waiting for unfinished jobs.... >>> MODPOST 1853 modules >>> >>> I use git bisect to find out the possible commits to lead this problem: >>> 7e1c04779efd51154baf652e653ceb24ce68939b kbuild: Use relative path for >>> $(objtree) >>> 890676c65d699db3ad82e7dddd0cf8fb449031af kbuild: Use relative path when >>> building in the source tree >>> 9da0763bdd82572be243fcf5161734f11568960f kbuild: Use relative path when >>> building in a subdir of the source tree >> >> Thanks for the report, I'll have a look. If I do not come up with a >> solution soon, I'll revert the series. > > I have yet to test this, but can you try the patch below? > > Thanks! > Michal > > > From 7f8336f4c7f2131efbe82543580dda3ec1988609 Mon Sep 17 00:00:00 2001 > From: Michal Marek <mmarek@suse.cz> > Date: Wed, 11 Jun 2014 13:53:48 +0200 > Subject: [PATCH] powerpc: Avoid circular dependency with zImage.% > > The rule to create the final images uses a zImage.% pattern. > Unfortunately, this also matches the names of the zImage.*.lds linker > scripts, which appear as a dependency of the final images. This somehow > worked when $(srctree) used to be an absolute path, but now the pattern > matches too much. List only the images from $(image-y) as the target of > the rule, to avoid the circular dependency. > If merged, this should of course have a Reported-by: Mike Qiu <qiudayu@linux.vnet.ibm.com> Michal -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Michal, after ally you patch, it also has some issue, see below: WARNING: 1 bad relocations c000000001455040 R_PPC64_ADDR64 uprobes_fetch_type_table arch/powerpc/boot/Makefile:336: target `arch/powerpc/boot/zImage.pseries' given more than once in the same rule. gcc -m32 -Wp,-MD,arch/powerpc/boot/.zImage.lds.d -nostdinc -isystem /usr/lib/gcc/ppc64-redhat-linux/4.7.2/include -I./arch/powerpc/include -Iarch/powerpc/include/generated -Iinclude -I./arch/powe rpc/include/uapi -Iarch/powerpc/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -Iarch/powerpc -E -Wp,-MD,arch/powerpc/boot/.zI mage.lds.d -P -Upowerpc \ -D__ASSEMBLY__ -DLINKER_SCRIPT -o arch/powerpc/boot/zImage.lds arch/powerpc/boot/zImage.lds.S WRAP arch/powerpc/boot/zImage.pseries WRAP arch/powerpc/boot/zImage.epapr MODPOST 1853 modules INFO: Uncompressed kernel (size 0x14d0db8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x1500000) ld: cannot find arch/powerpc/boot/vmlinux.o: No such file or directory make[1]: *** [arch/powerpc/boot/zImage.pseries] Error 1 make[1]: *** Waiting for unfinished jobs.... INFO: Uncompressed kernel (size 0x14d0db8) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x1500000) ld: cannot find arch/powerpc/boot/vmlinux.o: No such file or directory make[1]: *** [arch/powerpc/boot/zImage.epapr] Error 1 make: *** [zImage] Error 2 make: *** Waiting for unfinished jobs.... Thanks Mike On 06/11/2014 08:22 PM, Michal Marek wrote: > Dne 11.6.2014 14:21, Michal Marek napsal(a): >> On Wed, Jun 11, 2014 at 10:24:24AM +0200, Michal Marek wrote: >>> Dne 11.6.2014 08:02, Mike Qiu napsal(a): >>>> make[1]: Circular arch/powerpc/boot/zImage.lds.S <- >>>> arch/powerpc/boot/zImage.lds dependency dropped. >>>> make[1]: Circular arch/powerpc/boot/zImage.coff.lds.S <- >>>> arch/powerpc/boot/zImage.lds dependency dropped. >>>> make[1]: Circular arch/powerpc/boot/zImage.coff.lds.S <- >>>> arch/powerpc/boot/zImage.coff.lds dependency dropped. >>>> make[1]: Circular arch/powerpc/boot/zImage.ps3.lds.S <- >>>> arch/powerpc/boot/zImage.lds dependency dropped. >>>> make[1]: Circular arch/powerpc/boot/zImage.ps3.lds.S <- >>>> arch/powerpc/boot/zImage.coff.lds dependency dropped. >>>> make[1]: Circular arch/powerpc/boot/zImage.ps3.lds.S <- >>>> arch/powerpc/boot/zImage.ps3.lds dependency dropped. >>>> WRAP arch/powerpc/boot/zImage.ps3.lds.S >>>> INFO: Uncompressed kernel (size 0x14d0db8) overlaps the address of the >>>> wrapper(0x400000) >>>> INFO: Fixing the link_address of wrapper to (0x1500000) >>>> ld: cannot open linker script file arch/powerpc/boot/zImage.lds: No such >>>> file or directory >>>> make[1]: *** [arch/powerpc/boot/zImage.ps3.lds.S] Error 1 >>>> make: *** [zImage] Error 2 >>>> make: *** Waiting for unfinished jobs.... >>>> MODPOST 1853 modules >>>> >>>> I use git bisect to find out the possible commits to lead this problem: >>>> 7e1c04779efd51154baf652e653ceb24ce68939b kbuild: Use relative path for >>>> $(objtree) >>>> 890676c65d699db3ad82e7dddd0cf8fb449031af kbuild: Use relative path when >>>> building in the source tree >>>> 9da0763bdd82572be243fcf5161734f11568960f kbuild: Use relative path when >>>> building in a subdir of the source tree >>> Thanks for the report, I'll have a look. If I do not come up with a >>> solution soon, I'll revert the series. >> I have yet to test this, but can you try the patch below? >> >> Thanks! >> Michal >> >> >> From 7f8336f4c7f2131efbe82543580dda3ec1988609 Mon Sep 17 00:00:00 2001 >> From: Michal Marek <mmarek@suse.cz> >> Date: Wed, 11 Jun 2014 13:53:48 +0200 >> Subject: [PATCH] powerpc: Avoid circular dependency with zImage.% >> >> The rule to create the final images uses a zImage.% pattern. >> Unfortunately, this also matches the names of the zImage.*.lds linker >> scripts, which appear as a dependency of the final images. This somehow >> worked when $(srctree) used to be an absolute path, but now the pattern >> matches too much. List only the images from $(image-y) as the target of >> the rule, to avoid the circular dependency. >> > If merged, this should of course have a Reported-by: Mike Qiu > <qiudayu@linux.vnet.ibm.com> > > Michal > > -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile index 426dce7..c60992c 100644 --- a/arch/powerpc/boot/Makefile +++ b/arch/powerpc/boot/Makefile @@ -333,7 +333,7 @@ $(addprefix $(obj)/, $(initrd-y)): $(obj)/ramdisk.image.gz $(obj)/zImage.initrd.%: vmlinux $(wrapperbits) $(call if_changed,wrap,$*,,,$(obj)/ramdisk.image.gz) -$(obj)/zImage.%: vmlinux $(wrapperbits) +$(addprefix $(obj)/, $(filter zImage.%, $(image-y))): vmlinux $(wrapperbits) $(call if_changed,wrap,$*) # dtbImage% - a dtbImage is a zImage with an embedded device tree blob