[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.00.1110151543220.25063@chino.kir.corp.google.com>
Date: Sat, 15 Oct 2011 16:03:22 -0700 (PDT)
From: David Rientjes <rientjes@...gle.com>
To: James Bottomley <James.Bottomley@...senpartnership.com>
cc: Andi Kleen <andi@...stfloor.org>,
Stephen Rothwell <sfr@...b.auug.org.au>,
linux-kernel@...r.kernel.org, linux-arch@...r.kernel.org
Subject: Re: Please include const-sections into linux-next
On Fri, 14 Oct 2011, James Bottomley wrote:
> It's not incredibly trivial: it causes a compile failure on parisc:
>
> mm/percpu.c:1372: error: __setup_str_percpu_alloc_setup causes a section
> type conflict
> make[1]: *** [mm/percpu.o] Error 1
>
> I have no idea why, though.
>
Not sure why this would only happen on parisc, but I haven't looked at it
closely. It means something qualified with const is being defined in a
section with other definitions that are not const, or vice versa.
For example:
static int x __attribute__((__section__("foo"))) = 1;
static const int y __attribute__((__section__("foo"))) = 2;
will result in the same error. Since __setup_param() places
__setup_str_percpu_alloc_setup in .init.rodata as const, it means
something else has already been defined in .init.rodata without being
qualified as such.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists