From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from pfepb.post.tele.dk (pfepb.post.tele.dk [195.41.46.236]) by bilbo.ozlabs.org (Postfix) with ESMTP id A6BB3B70CC for ; Wed, 24 Jun 2009 05:20:55 +1000 (EST) Date: Tue, 23 Jun 2009 21:23:04 +0200 From: Sam Ravnborg To: Kyle McMartin Subject: Re: [PATCH v2] fbdev: work around old compiler bug Message-ID: <20090623192304.GA23124@uranus.ravnborg.org> References: <20090622180420.2e0424e4.sfr@canb.auug.org.au> <20090622183415.46fa786b.sfr@canb.auug.org.au> <20090623154428.e2f4ddc9.sfr@canb.auug.org.au> <20090623164505.GA3101@bombadil.infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <20090623164505.GA3101@bombadil.infradead.org> Cc: Stephen Rothwell , James Simmons , ppc-dev , LKML , Krzysztof Helt , Geert Uytterhoeven , Andrew Morton , Linus List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Tue, Jun 23, 2009 at 12:45:05PM -0400, Kyle McMartin wrote: > On Tue, Jun 23, 2009 at 03:44:28PM +1000, Stephen Rothwell wrote: > > When building with a 4.1.x compiler on powerpc64 (at least) we get > > this error: > > > > drivers/video/logo/logo_linux_mono.c:81: error: logo_linux_mono causes a section type conflict > > > > This was introduced by commit ae52bb2384f721562f15f719de1acb8e934733cb > > ("fbdev: move logo externs to header file"). This is a partial revert > > of that commit sufficient to not hit the compiler bug. > > > > We're seeing similar issues with 4.3 on parisc (the case I saw today was > in fs/nfs/nfsroot.c...) Any ideas on the actual culprit or is it just > gcc being unfriendly? Al analysed this some time ago. When we say something is const then _sometimes_ gcc annotate the section as const(*) - sometimes not. So if we have two variables/functions annotated __*const and gcc decides to annotate the section const only in one case we get a section type conflict. (*) it is named something else I do not recall at the moment in linker language. Sam