Re: [GIT PATCH] driver core patches against 2.6.24

Greg KH
2008-01-25T18:53:49Z

On Fri, Jan 25, 2008 at 10:44:59AM -0800, Linus Torvalds wrote:
>
>
> On Thu, 24 Jan 2008, Greg KH wrote:
> >
> > Here are a pretty large number of kobject, documentation, and driver
> > core patches against your 2.6.24 git tree.
>
> I've merged it all, but it causes lots of scary warnings:
>
> - from the purely broken ones:
>
> ehci_hcd: no version for "struct_module" found: kernel tainted.
>
> - to the scary ones:
>
> sysfs: duplicate filename 'ehci_hcd' can not be created
> WARNING: at fs/sysfs/dir.c:424 sysfs_add_one()
> Pid: 610, comm: insmod Tainted: GF 2.6.24-gb47711bf #28
>
> Call Trace:
> [<ffffffff802bd63c>] sysfs_add_one+0x54/0xbd
> [<ffffffff802bdbc0>] create_dir+0x4f/0x87
> [<ffffffff802bdc2d>] sysfs_create_dir+0x35/0x4a
> [<ffffffff803154c8>] kobject_get+0x12/0x17
> [<ffffffff80315607>] kobject_add_internal+0xd9/0x194
> [<ffffffff8031579c>] kobject_add_varg+0x54/0x61
> [<ffffffff80261efe>] __alloc_pages+0x66/0x2ee
> [<ffffffff80315321>] kobject_init+0x42/0x82
> [<ffffffff80315843>] kobject_init_and_add+0x9a/0xa7
> [<ffffffff802722c0>] __vmalloc_area_node+0x111/0x135
> [<ffffffff8025546b>] mod_sysfs_init+0x6e/0x83
> [<ffffffff802561e8>] sys_init_module+0xa3d/0x1833
> [<ffffffff8028ebd5>] dput+0x1c/0x10b
> [<ffffffff8020b3be>] system_call+0x7e/0x83
>
> and the problem seems to be that it does all these checks even for modules
> that will never be loaded, because I use my own kernel, but with the
> default Fedora initrd (which is trying to load modules for stuff that I
> already have built in).
>
> Very annoying.

That's really wierd, I don't see that at all here just running with your
2.6.24 + my git tree and lots of USB drivers built into the kernel also
(like ehci_hcd).

I'll try to reproduce it on your merged git tree now...

> Can we please do that *after* the module loading symbol checks have run,
> so that when you try to load a module that will not load, it won't
> complain about these silly things?
>
> (You can probably trigger this by simply trying to load a module that was
> compiled for another kernel version - it will fail fine, but in failing it
> will then generate all these incorrect warnings!)
>
> Now it incorrectly taints my kernel, for no good reason.

$ cat /proc/sys/kernel/tainted
0

Odd...

$ uname -r
2.6.24-ge374a2bf-dirty

Strange, I thought that the uname id would show the git version that you
were running, but that doesn't show a valid id. But that's probably a
different issue in the build system somewhere...

thanks,

greg k-h