On Tue, Jan 08, 2008 at 10:03:05PM +0530, Sudhir Kumar wrote: > Hi Andrew, > Kernel build fails on my machine with error : > > > LD drivers/net/ehea/built-in.o > CC [M] drivers/net/ehea/ehea_main.o > 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??? > make[3]: *** [drivers/net/ehea/ehea_main.o] Error 1 > make[2]: *** [drivers/net/ehea] Error 2 > make[1]: *** [drivers/net] Error 2 > make: *** [drivers] Error 2 > > The structure device_driver(in device.h) has a member struct driver_private > which > contains the member kobj (according to drivers/base/base.h). > But in device.h struct driver_private has been declared localy and > neither defined nor included from base.h. > So my effort to use driver->driver_private->obj also does not work. > (I am surprised from where do you access the struct device_driver)
That is because a driver should not be accessing such a field. And especially not in this manner, why would this driver be creating a symlink that has already been created by the driver core? This whole thing can just be removed with no problems. Can you try just removing the ehea_driver_sysfs_add and ehea_driver_sysfs_remove functions to verify this as I don't have the hardware present to test it out. thanks, greg k-h -- 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/