2008-01-09 10:11:23

by Sudhir Kumar

[permalink] [raw]
Subject: Build Fails on 2.6.24-rc6-mm1[drivers/net/iseries_veth.ko] linking error

Hi Andrew,
Build fails on my Power Machine with following error message.


HOSTLD arch/powerpc/boot/dtc
WRAP arch/powerpc/boot/zImage.pseries
WRAP arch/powerpc/boot/zImage.pmac
strip -s -R .comment vmlinux -o arch/powerpc/boot/zImage.iseries
Building modules, stage 2.
MODPOST 264 modules
ERROR: ".driver_add_kobj" [drivers/net/iseries_veth.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

Thanks and Regards,
Sudhir Kumar


2008-01-09 19:15:28

by Sam Ravnborg

[permalink] [raw]
Subject: Re: Build Fails on 2.6.24-rc6-mm1[drivers/net/iseries_veth.ko] linking error

On Wed, Jan 09, 2008 at 03:44:04PM +0530, Sudhir Kumar wrote:
> Hi Andrew,
> Build fails on my Power Machine with following error message.
>
>
> HOSTLD arch/powerpc/boot/dtc
> WRAP arch/powerpc/boot/zImage.pseries
> WRAP arch/powerpc/boot/zImage.pmac
> strip -s -R .comment vmlinux -o arch/powerpc/boot/zImage.iseries
> Building modules, stage 2.
> MODPOST 264 modules
> ERROR: ".driver_add_kobj" [drivers/net/iseries_veth.ko] undefined!
> make[1]: *** [__modpost] Error 1
> make: *** [modules] Error 2

driver_add_kobj has a single user - iseries_veth. It is even documented
in the comment in the file.
And you build iseries_veth as a module but driver_add_kobj is not exported
which is why you get this modpost error.

Workaround: make the driver built-in
Fix: export driver_add_kobj or replace usage in iseries_veth.

Sam

2008-01-09 21:15:26

by Greg KH

[permalink] [raw]
Subject: Re: Build Fails on 2.6.24-rc6-mm1[drivers/net/iseries_veth.ko] linking error

On Wed, Jan 09, 2008 at 08:14:56PM +0100, Sam Ravnborg wrote:
> On Wed, Jan 09, 2008 at 03:44:04PM +0530, Sudhir Kumar wrote:
> > Hi Andrew,
> > Build fails on my Power Machine with following error message.
> >
> >
> > HOSTLD arch/powerpc/boot/dtc
> > WRAP arch/powerpc/boot/zImage.pseries
> > WRAP arch/powerpc/boot/zImage.pmac
> > strip -s -R .comment vmlinux -o arch/powerpc/boot/zImage.iseries
> > Building modules, stage 2.
> > MODPOST 264 modules
> > ERROR: ".driver_add_kobj" [drivers/net/iseries_veth.ko] undefined!
> > make[1]: *** [__modpost] Error 1
> > make: *** [modules] Error 2
>
> driver_add_kobj has a single user - iseries_veth. It is even documented
> in the comment in the file.
> And you build iseries_veth as a module but driver_add_kobj is not exported
> which is why you get this modpost error.
>
> Workaround: make the driver built-in
> Fix: export driver_add_kobj or replace usage in iseries_veth.

I'll properly export this symbol, that's the right fix.

Sorry about this,

greg k-h