From patchwork Wed Jun 11 12:21:04 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michal Marek X-Patchwork-Id: 4336021 Return-Path: X-Original-To: patchwork-linux-kbuild@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id C6B319F357 for ; Wed, 11 Jun 2014 12:21:15 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id E966E20155 for ; Wed, 11 Jun 2014 12:21:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 070CC20149 for ; Wed, 11 Jun 2014 12:21:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755456AbaFKMVL (ORCPT ); Wed, 11 Jun 2014 08:21:11 -0400 Received: from cantor2.suse.de ([195.135.220.15]:54077 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754983AbaFKMVH (ORCPT ); Wed, 11 Jun 2014 08:21:07 -0400 Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 1281F75017; Wed, 11 Jun 2014 12:21:06 +0000 (UTC) Received: by pobox.suse.cz (Postfix, from userid 10020) id 142C2C22A4; Wed, 11 Jun 2014 14:21:05 +0200 (CEST) Date: Wed, 11 Jun 2014 14:21:04 +0200 From: Michal Marek To: Mike Qiu Cc: linuxppc , Sam Ravnborg , linux-kbuild Subject: Re: Kernel build fail with "Circular xxxx <- xxxx dependency dropped" Message-ID: <20140611122104.GA24569@pobox.suse.cz> References: <5397F0E9.8060305@linux.vnet.ibm.com> <53981238.8010007@suse.cz> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <53981238.8010007@suse.cz> User-Agent: Mutt/1.5.17 (2007-11-01) Sender: linux-kbuild-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kbuild@vger.kernel.org X-Spam-Status: No, score=-7.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP 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 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. Signed-off-by: Michal Marek --- arch/powerpc/boot/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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