Re: tq 2440

From: Russell King - ARM Linux
Date: Thu Jul 15 2010 - 12:36:12 EST


On Thu, Jul 15, 2010 at 11:16:30PM +0800, Conke Hu wrote:
> ever notice to the following kernel log?
> "Device 's3c2440-nand' does not have a release() function, it is
> broken and must."
> release() function should be implemented in the platform_device.

That's not telling you to provide a release function. The warning is
telling you that a device is being unregistered which doesn't have a
release function.

Consider this point - maybe it doesn't have a release function because
it's not supposed to be unregistered?

> > ------------[ cut here ]------------
> > WARNING: at fs/sysfs/dir.c:463 sysfs_add_one+0x30/0x44()
> > sysfs: duplicate filename 'dm9000.0' can not be created

This is the cause of the problem. You're registering two dm9000.0
devices. That's illegal, and it then causes all these:

> > WARNING: at drivers/base/core.c:122 device_release+0x6c/0x78()
> > Device 's3c24xx_led.3' does not have a release() function, it is broken and mus.
> > WARNING: at drivers/base/core.c:122 device_release+0x6c/0x78()
> > Device 's3c24xx_led.2' does not have a release() function, it is broken and mus.
> > WARNING: at drivers/base/core.c:122 device_release+0x6c/0x78()
> > Device 's3c24xx_led.1' does not have a release() function, it is broken and mus.
> > WARNING: at drivers/base/core.c:122 device_release+0x6c/0x78()
> > Device 's3c24xx_led.0' does not have a release() function, it is broken and mus.
> > WARNING: at drivers/base/core.c:122 device_release+0x6c/0x78()
> > Device 's3c2440-nand' does not have a release() function, it is broken and must.
...

Fix the first problem (which is the real one) and you won't have these
other problems (which aren't actually a problem.)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/