drivers/video/logo/logo_linux_mono.c build error
Geert Uytterhoeven
Geert.Uytterhoeven at sonycom.com
Tue May 26 21:52:34 EST 2009
Hi Andrew,
On Thu, 14 May 2009, Geert Uytterhoeven wrote:
> On Wed, 13 May 2009, Andrew Morton wrote:
> > On Tue, 28 Apr 2009 09:24:53 +0200 (CEST)
> > Geert Uytterhoeven <Geert.Uytterhoeven at sonycom.com> wrote:
> > > On Tue, 28 Apr 2009, Stephen Rothwell wrote:
> > > > On Mon, 27 Apr 2009 14:50:31 -0700 Andrew Morton <akpm at linux-foundation.org> wrote:
> > > > > powerpc allmodconfig, current mainline:
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > > > >
> > > > > drivers/video/logo/logo_linux_mono.c:11: error: logo_linux_mono_data causes a section type conflict
> > > > >
> > > > > switching it from __initconst to __initdata "fixes" it.
> > > >
> > > > Interesting. The program that generates the .c file above produces
> > > > __initdata for me ...
> > >
> > > I assume Andrew once built in that tree using the recent logo patches that
> > > 1. Makes the logos const and switch them from __initdata to __initconst,
> > > 2. Fix the missing dependency of the generated files on the generator program.
> > > Hence if you revert the logo patches, you have to manually remove the generated
> > > files.
> > >
> > > Is my assumption correct?
> >
> > Nope - mrproper removes every .c file from drivers/video/logo/ apart
> > from logo.c
> >
> >
> >
> > The failure is caused by your fbdev-move-logo-externs-to-header-file.patch.
>
> Which is not in current mainline, so the above reference was incorrectly
> fueling my assumption?
>
> > Without that patch, drivers/video/logo/logo_linux_mono.c is generated as
> >
> > static unsigned char logo_linux_mono_data[] __initdata = {
> >
> > and with that patch, drivers/video/logo/logo_linux_mono.c is generated as
> >
> > static const unsigned char logo_linux_mono_data[] __initconst = {
> >
> > and it's the switch from __initdata to __initconst which causes this
> > section conflict in my setup.
>
> But logo_linux_mono_data is referenced by
>
> const struct linux_logo logo_linux_mono __initconst = {
> .type = LINUX_LOGO_MONO,
> .width = 80,
> .height = 80,
> .data = logo_linux_mono_data
> };
>
> only, which is also __initconst? Where does the section type conflict come
> from?
Do you have any follow-up info on this one?
Thx!
With kind regards,
Geert Uytterhoeven
Software Architect
Techsoft Centre
Technology and Software Centre Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium
Phone: +32 (0)2 700 8453
Fax: +32 (0)2 700 8622
E-mail: Geert.Uytterhoeven at sonycom.com
Internet: http://www.sony-europe.com/
A division of Sony Europe (Belgium) N.V.
VAT BE 0413.825.160 · RPR Brussels
Fortis · BIC GEBABEBB · IBAN BE41293037680010
More information about the Linuxppc-dev
mailing list