Re: 2.6.24-rc4-mm1: kobj changes fallout on powerpc

Greg KH
2007-12-05T15:45:13Z

On Wed, Dec 05, 2007 at 06:41:40PM +0530, Kamalesh Babulal wrote:
> On Wed, Dec 05, 2007 at 03:15:15AM -0600, Olof Johansson wrote:
> > powerpc allyesconfig fails on the following two drivers (iseries_defconfig
> > fails for the veth one):
> >
> > drivers/net/ehea/ehea_main.c: In function 'ehea_driver_sysfs_add':
> > drivers/net/ehea/ehea_main.c:2812: error: 'struct device_driver' has no member named 'kobj'
> > drivers/net/ehea/ehea_main.c:2815: error: 'struct device_driver' has no member named 'kobj'
> > drivers/net/ehea/ehea_main.c:2818: error: 'struct device_driver' has no member named 'kobj'
> > drivers/net/ehea/ehea_main.c: In function 'ehea_driver_sysfs_remove':
> > drivers/net/ehea/ehea_main.c:2830: error: 'struct device_driver' has no member named 'kobj'
> > drivers/net/iseries_veth.c: In function 'veth_module_init':
> > drivers/net/iseries_veth.c:1714: error: 'struct device_driver' has no member named 'kobj'
> >
> > I'm guessing it's some of Greg's kobj/driver patches that missed to
> > change this, but it's not obvious to me how it should be fixed.
> >
> >
> > -Olof
> Hi,
>
> Probably this patch should fix the build failure (The kobject related
> structure have been moved to driver_private struct).

Yes, but as driver_private is not known by any driver, I don't think
this patch will work at all.

> Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
> --
> --- linux-2.6.24-rc4/drivers/net/ehea/ehea_main.c 2007-12-04 09:56:10.000000000 +0530
> +++ linux-2.6.24-rc4/drivers/net/ehea/~ehea_main.c 2007-12-05 18:01:31.000000000 +0530
> @@ -2809,7 +2809,7 @@ static int ehea_driver_sysfs_add(struct
> {
> int ret;
>
> - ret = sysfs_create_link(&driver->kobj, &dev->kobj,
> + ret = sysfs_create_link(&driver->driver_private->kobj, &dev->kobj,
> kobject_name(&dev->kobj));

What are you trying to do here? The driver core already sets up this
symlink for you automatically, why are you createing yet-another-link
with a different name? This should just be removed entirely, it's not
needed at all.

So, to fix the build properly, just delete the sysfs_create_link() call
entirely.

thanks,

greg k-h