2007-10-23 17:52:23

by Kristoffer Ericson

[permalink] [raw]
Subject: [ARM] : Section mismatch : reference to......

Best way to handle this?


LD init/built-in.o
LD .tmp_vmlinux1
KSYM .tmp_kallsyms1.S
AS .tmp_kallsyms1.o
LD .tmp_vmlinux2
KSYM .tmp_kallsyms2.S
AS .tmp_kallsyms2.o
LD vmlinux.o
MODPOST vmlinux.o
WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
LD vmlinux
SYSMAP System.map
SYSMAP .tmp_System.map
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
AS arch/arm/boot/compressed/head.o
GZIP arch/arm/boot/compressed/piggy.gz
AS arch/arm/boot/compressed/piggy.o
CC arch/arm/boot/compressed/misc.o
AS arch/arm/boot/compressed/head-sa1100.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready


2007-10-23 18:01:24

by Randy Dunlap

[permalink] [raw]
Subject: Re: [ARM] : Section mismatch : reference to......

On Tue, 23 Oct 2007 19:52:07 -0700 Kristoffer Ericson wrote:

> Best way to handle this?
>
>
> LD init/built-in.o
> LD .tmp_vmlinux1
> KSYM .tmp_kallsyms1.S
> AS .tmp_kallsyms1.o
> LD .tmp_vmlinux2
> KSYM .tmp_kallsyms2.S
> AS .tmp_kallsyms2.o
> LD vmlinux.o
> MODPOST vmlinux.o
> WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
> WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
> LD vmlinux
> SYSMAP System.map
> SYSMAP .tmp_System.map
> OBJCOPY arch/arm/boot/Image
> Kernel: arch/arm/boot/Image is ready
> AS arch/arm/boot/compressed/head.o
> GZIP arch/arm/boot/compressed/piggy.gz
> AS arch/arm/boot/compressed/piggy.o
> CC arch/arm/boot/compressed/misc.o
> AS arch/arm/boot/compressed/head-sa1100.o
> LD arch/arm/boot/compressed/vmlinux
> OBJCOPY arch/arm/boot/zImage
> Kernel: arch/arm/boot/zImage is ready
> -

Missing kernel version and .config file.

In drivers/pcmcia/sa1100_jornada.c, change

int __init pcmcia_jornada720_init(struct device *dev)

to

int __devinit pcmcia_jornada720_init(struct device *dev)

may help. Please test that.

I can't find sa1110_mb_enable().

---
~Randy

2007-10-23 18:09:25

by Kristoffer Ericson

[permalink] [raw]
Subject: Re: [ARM] : Section mismatch : reference to......

On Tue, 23 Oct 2007 11:01:13 -0700
Randy Dunlap <[email protected]> wrote:

> On Tue, 23 Oct 2007 19:52:07 -0700 Kristoffer Ericson wrote:
>
> > Best way to handle this?
> >
> >
> > LD init/built-in.o
> > LD .tmp_vmlinux1
> > KSYM .tmp_kallsyms1.S
> > AS .tmp_kallsyms1.o
> > LD .tmp_vmlinux2
> > KSYM .tmp_kallsyms2.S
> > AS .tmp_kallsyms2.o
> > LD vmlinux.o
> > MODPOST vmlinux.o
> > WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
> > WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
> > LD vmlinux
> > SYSMAP System.map
> > SYSMAP .tmp_System.map
> > OBJCOPY arch/arm/boot/Image
> > Kernel: arch/arm/boot/Image is ready
> > AS arch/arm/boot/compressed/head.o
> > GZIP arch/arm/boot/compressed/piggy.gz
> > AS arch/arm/boot/compressed/piggy.o
> > CC arch/arm/boot/compressed/misc.o
> > AS arch/arm/boot/compressed/head-sa1100.o
> > LD arch/arm/boot/compressed/vmlinux
> > OBJCOPY arch/arm/boot/zImage
> > Kernel: arch/arm/boot/zImage is ready
> > -
>
> Missing kernel version and .config file.
Ah, true. Im using latest git (linux-2.6.git) with proper config. This error has been there for quite some time, just decided it was time to fix it. Im not fully familiar with the section errors, so thought it better to ask.

>
> In drivers/pcmcia/sa1100_jornada.c, change
>
> int __init pcmcia_jornada720_init(struct device *dev)
>
> to
>
> int __devinit pcmcia_jornada720_init(struct device *dev)
>
> may help. Please test that.
Seems to work fine, big thanks.
>
> I can't find sa1110_mb_enable().
Found it inside /arch/arm/mach-sa1100/generic.c, proper way to set it as __devinit?
>
> ---
> ~Randy

2007-10-23 18:15:23

by Randy Dunlap

[permalink] [raw]
Subject: Re: [ARM] : Section mismatch : reference to......

On Tue, 23 Oct 2007 20:09:06 -0700 Kristoffer Ericson wrote:

> On Tue, 23 Oct 2007 11:01:13 -0700
> Randy Dunlap <[email protected]> wrote:
>
> > On Tue, 23 Oct 2007 19:52:07 -0700 Kristoffer Ericson wrote:
> >
> > > Best way to handle this?
> > >
> > >
> > > LD init/built-in.o
> > > LD .tmp_vmlinux1
> > > KSYM .tmp_kallsyms1.S
> > > AS .tmp_kallsyms1.o
> > > LD .tmp_vmlinux2
> > > KSYM .tmp_kallsyms2.S
> > > AS .tmp_kallsyms2.o
> > > LD vmlinux.o
> > > MODPOST vmlinux.o
> > > WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
> > > WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
> > > LD vmlinux
> > > SYSMAP System.map
> > > SYSMAP .tmp_System.map
> > > OBJCOPY arch/arm/boot/Image
> > > Kernel: arch/arm/boot/Image is ready
> > > AS arch/arm/boot/compressed/head.o
> > > GZIP arch/arm/boot/compressed/piggy.gz
> > > AS arch/arm/boot/compressed/piggy.o
> > > CC arch/arm/boot/compressed/misc.o
> > > AS arch/arm/boot/compressed/head-sa1100.o
> > > LD arch/arm/boot/compressed/vmlinux
> > > OBJCOPY arch/arm/boot/zImage
> > > Kernel: arch/arm/boot/zImage is ready
> > > -
> >
> > Missing kernel version and .config file.
> Ah, true. Im using latest git (linux-2.6.git) with proper config. This error has been there for quite some time, just decided it was time to fix it. Im not fully familiar with the section errors, so thought it better to ask.
>
> >
> > In drivers/pcmcia/sa1100_jornada.c, change
> >
> > int __init pcmcia_jornada720_init(struct device *dev)
> >
> > to
> >
> > int __devinit pcmcia_jornada720_init(struct device *dev)
> >
> > may help. Please test that.
> Seems to work fine, big thanks.
> >
> > I can't find sa1110_mb_enable().
> Found it inside /arch/arm/mach-sa1100/generic.c, proper way to set it as __devinit?

Probably, at least it's worth trying.

---
~Randy

2007-10-23 18:20:34

by Kristoffer Ericson

[permalink] [raw]
Subject: Re: [ARM] : Section mismatch : reference to......

On Tue, 23 Oct 2007 11:15:06 -0700
Randy Dunlap <[email protected]> wrote:

> On Tue, 23 Oct 2007 20:09:06 -0700 Kristoffer Ericson wrote:
>
> > On Tue, 23 Oct 2007 11:01:13 -0700
> > Randy Dunlap <[email protected]> wrote:
> >
> > > On Tue, 23 Oct 2007 19:52:07 -0700 Kristoffer Ericson wrote:
> > >
> > > > Best way to handle this?
> > > >
> > > >
> > > > LD init/built-in.o
> > > > LD .tmp_vmlinux1
> > > > KSYM .tmp_kallsyms1.S
> > > > AS .tmp_kallsyms1.o
> > > > LD .tmp_vmlinux2
> > > > KSYM .tmp_kallsyms2.S
> > > > AS .tmp_kallsyms2.o
> > > > LD vmlinux.o
> > > > MODPOST vmlinux.o
> > > > WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
> > > > WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
> > > > LD vmlinux
> > > > SYSMAP System.map
> > > > SYSMAP .tmp_System.map
> > > > OBJCOPY arch/arm/boot/Image
> > > > Kernel: arch/arm/boot/Image is ready
> > > > AS arch/arm/boot/compressed/head.o
> > > > GZIP arch/arm/boot/compressed/piggy.gz
> > > > AS arch/arm/boot/compressed/piggy.o
> > > > CC arch/arm/boot/compressed/misc.o
> > > > AS arch/arm/boot/compressed/head-sa1100.o
> > > > LD arch/arm/boot/compressed/vmlinux
> > > > OBJCOPY arch/arm/boot/zImage
> > > > Kernel: arch/arm/boot/zImage is ready
> > > > -
> > >
> > > Missing kernel version and .config file.
> > Ah, true. Im using latest git (linux-2.6.git) with proper config. This error has been there for quite some time, just decided it was time to fix it. Im not fully familiar with the section errors, so thought it better to ask.
> >
> > >
> > > In drivers/pcmcia/sa1100_jornada.c, change
> > >
> > > int __init pcmcia_jornada720_init(struct device *dev)
> > >
> > > to
> > >
> > > int __devinit pcmcia_jornada720_init(struct device *dev)
> > >
> > > may help. Please test that.
> > Seems to work fine, big thanks.
> > >
> > > I can't find sa1110_mb_enable().
> > Found it inside /arch/arm/mach-sa1100/generic.c, proper way to set it as __devinit?
>
> Probably, at least it's worth trying.
Seems to have worked fine. Could anyone explain why?.. Or I can google it I guess.
Anyhow big thanx Randy
>
> ---
> ~Randy
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/

2007-10-23 18:30:22

by Randy Dunlap

[permalink] [raw]
Subject: Re: [ARM] : Section mismatch : reference to......

On Tue, 23 Oct 2007 20:20:20 -0700 Kristoffer Ericson wrote:

> On Tue, 23 Oct 2007 11:15:06 -0700
> Randy Dunlap <[email protected]> wrote:
>
> > On Tue, 23 Oct 2007 20:09:06 -0700 Kristoffer Ericson wrote:
> >
> > > On Tue, 23 Oct 2007 11:01:13 -0700
> > > Randy Dunlap <[email protected]> wrote:
> > >
> > > > On Tue, 23 Oct 2007 19:52:07 -0700 Kristoffer Ericson wrote:
> > > >
> > > > > Best way to handle this?
> > > > >
> > > > >
> > > > > LD init/built-in.o
> > > > > LD .tmp_vmlinux1
> > > > > KSYM .tmp_kallsyms1.S
> > > > > AS .tmp_kallsyms1.o
> > > > > LD .tmp_vmlinux2
> > > > > KSYM .tmp_kallsyms2.S
> > > > > AS .tmp_kallsyms2.o
> > > > > LD vmlinux.o
> > > > > MODPOST vmlinux.o
> > > > > WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
> > > > > WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
> > > > > LD vmlinux
> > > > > SYSMAP System.map
> > > > > SYSMAP .tmp_System.map
> > > > > OBJCOPY arch/arm/boot/Image
> > > > > Kernel: arch/arm/boot/Image is ready
> > > > > AS arch/arm/boot/compressed/head.o
> > > > > GZIP arch/arm/boot/compressed/piggy.gz
> > > > > AS arch/arm/boot/compressed/piggy.o
> > > > > CC arch/arm/boot/compressed/misc.o
> > > > > AS arch/arm/boot/compressed/head-sa1100.o
> > > > > LD arch/arm/boot/compressed/vmlinux
> > > > > OBJCOPY arch/arm/boot/zImage
> > > > > Kernel: arch/arm/boot/zImage is ready
> > > > > -
> > > >
> > > > Missing kernel version and .config file.
> > > Ah, true. Im using latest git (linux-2.6.git) with proper config. This error has been there for quite some time, just decided it was time to fix it. Im not fully familiar with the section errors, so thought it better to ask.
> > >
> > > >
> > > > In drivers/pcmcia/sa1100_jornada.c, change
> > > >
> > > > int __init pcmcia_jornada720_init(struct device *dev)
> > > >
> > > > to
> > > >
> > > > int __devinit pcmcia_jornada720_init(struct device *dev)
> > > >
> > > > may help. Please test that.
> > > Seems to work fine, big thanks.
> > > >
> > > > I can't find sa1110_mb_enable().
> > > Found it inside /arch/arm/mach-sa1100/generic.c, proper way to set it as __devinit?
> >
> > Probably, at least it's worth trying.
> Seems to have worked fine. Could anyone explain why?.. Or I can google it I guess.
> Anyhow big thanx Randy

You have CONFIG_HOTPLUG=y in your .config file?

If yes, see what that does to include/linux/init.h:

#ifdef CONFIG_HOTPLUG
#define __devinit
#define __devinitdata
#define __devexit
#define __devexitdata
#else
#define __devinit __init
#define __devinitdata __initdata
#define __devexit __exit
#define __devexitdata __exitdata
#endif


so those __devinit functions are not discarded when CONFIG_HOTPLUG=y,
but they are discarded when CONFIG_HOTPLUG=n.


---
~Randy

2007-10-23 18:33:28

by Kristoffer Ericson

[permalink] [raw]
Subject: Re: [ARM] : Section mismatch : reference to......

On Tue, 23 Oct 2007 11:30:01 -0700
Randy Dunlap <[email protected]> wrote:

> On Tue, 23 Oct 2007 20:20:20 -0700 Kristoffer Ericson wrote:
>
> > On Tue, 23 Oct 2007 11:15:06 -0700
> > Randy Dunlap <[email protected]> wrote:
> >
> > > On Tue, 23 Oct 2007 20:09:06 -0700 Kristoffer Ericson wrote:
> > >
> > > > On Tue, 23 Oct 2007 11:01:13 -0700
> > > > Randy Dunlap <[email protected]> wrote:
> > > >
> > > > > On Tue, 23 Oct 2007 19:52:07 -0700 Kristoffer Ericson wrote:
> > > > >
> > > > > > Best way to handle this?
> > > > > >
> > > > > >
> > > > > > LD init/built-in.o
> > > > > > LD .tmp_vmlinux1
> > > > > > KSYM .tmp_kallsyms1.S
> > > > > > AS .tmp_kallsyms1.o
> > > > > > LD .tmp_vmlinux2
> > > > > > KSYM .tmp_kallsyms2.S
> > > > > > AS .tmp_kallsyms2.o
> > > > > > LD vmlinux.o
> > > > > > MODPOST vmlinux.o
> > > > > > WARNING: vmlinux.o(.text+0x9afc): Section mismatch: reference to .init.text:sa1110_mb_enable (between 'sa1111_probe' and 'sa1111_remove')
> > > > > > WARNING: vmlinux.o(.text+0x13b1ac): Section mismatch: reference to .init.text:pcmcia_jornada720_init (between 'pcmcia_probe' and 'pcmcia_remove')
> > > > > > LD vmlinux
> > > > > > SYSMAP System.map
> > > > > > SYSMAP .tmp_System.map
> > > > > > OBJCOPY arch/arm/boot/Image
> > > > > > Kernel: arch/arm/boot/Image is ready
> > > > > > AS arch/arm/boot/compressed/head.o
> > > > > > GZIP arch/arm/boot/compressed/piggy.gz
> > > > > > AS arch/arm/boot/compressed/piggy.o
> > > > > > CC arch/arm/boot/compressed/misc.o
> > > > > > AS arch/arm/boot/compressed/head-sa1100.o
> > > > > > LD arch/arm/boot/compressed/vmlinux
> > > > > > OBJCOPY arch/arm/boot/zImage
> > > > > > Kernel: arch/arm/boot/zImage is ready
> > > > > > -
> > > > >
> > > > > Missing kernel version and .config file.
> > > > Ah, true. Im using latest git (linux-2.6.git) with proper config. This error has been there for quite some time, just decided it was time to fix it. Im not fully familiar with the section errors, so thought it better to ask.
> > > >
> > > > >
> > > > > In drivers/pcmcia/sa1100_jornada.c, change
> > > > >
> > > > > int __init pcmcia_jornada720_init(struct device *dev)
> > > > >
> > > > > to
> > > > >
> > > > > int __devinit pcmcia_jornada720_init(struct device *dev)
> > > > >
> > > > > may help. Please test that.
> > > > Seems to work fine, big thanks.
> > > > >
> > > > > I can't find sa1110_mb_enable().
> > > > Found it inside /arch/arm/mach-sa1100/generic.c, proper way to set it as __devinit?
> > >
> > > Probably, at least it's worth trying.
> > Seems to have worked fine. Could anyone explain why?.. Or I can google it I guess.
> > Anyhow big thanx Randy
>
> You have CONFIG_HOTPLUG=y in your .config file?
>
> If yes, see what that does to include/linux/init.h:
>
> #ifdef CONFIG_HOTPLUG
> #define __devinit
> #define __devinitdata
> #define __devexit
> #define __devexitdata
> #else
> #define __devinit __init
> #define __devinitdata __initdata
> #define __devexit __exit
> #define __devexitdata __exitdata
> #endif
>
>
> so those __devinit functions are not discarded when CONFIG_HOTPLUG=y,
> but they are discarded when CONFIG_HOTPLUG=n.
I got CONFIG_HOTPLUG = y, so should be alright then.

>
>
> ---
> ~Randy