lkml.org 
[lkml]   [2008]   [May]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: kobject: Fix kobject_rename and !CONFIG_SYSFS
Quoting Greg KH <greg@kroah.com>:

> On Tue, May 13, 2008 at 04:25:01PM +0200, Benjamin Thery wrote:
>> Eric W. Biederman wrote:
>>> Greg KH <greg@kroah.com> writes:
>>>> Eric, Randy Dunlap has found that this patch breaks the build when
>>>> CONFIG_SYSFS is not enabled. Can you please fix it up before I send it
>>>> to Linus?
>>>>
>>>> The exact error is:
>>>> In file included from
>>>> /local/linsrc/next-20080509/include/linux/kobject.h:21,
>>>> from
>>>> /local/linsrc/next-20080509/include/linux/module.h:16,
>>>> from
>>>> /local/linsrc/next-20080509/include/linux/crypto.h:21,
>>>> from
>>>> /local/linsrc/next-20080509/arch/x86/kernel/asm-offsets_64.c:7,
>>>> from
>>>> /local/linsrc/next-20080509/arch/x86/kernel/asm-offsets.c:4:
>>>> /local/linsrc/next-20080509/include/linux/sysfs.h: In function
>>>> 'sysfs_rename_dir':
>>>> /local/linsrc/next-20080509/include/linux/sysfs.h:142: error: implicit
>>>> declaration of function 'kobject_set_name'
>>> I will take a look in the morning and see if I can see what is wrong.
>>> Which tree was this error against? I thought I tested this case,
>>> and I'm wondering if there might be another patch that is hiding
>>> kobject_set_name.
>>
>> Argh, headers "cross-dependencies":
>>
>> * linux/kobject.h includes linux/sysfs.h before defining
>> kobject_set_name()
>>
>> * linux/sysfs.h needs to include linux/kobject.h to find
>> kobject_set_name() definition (for inlined sysfs_rename_dir() when
>> CONFIG_SYSFS=n)
>>
>>
>> sysfs_rename_dir() is only called by kobject.c, kobject_rename().
>> I guess this kind of patch is not acceptable to fix the depency?
>
> Ick, no. I'd rather add a kobject_set_name() function prototype to
> sysfs.h in this case, that should remove the error, right?

That's what I did first. But I thought it was worse than the above
solution.
Anyway, adding kobject_set_name() to sysfs.h did fix the error.

-Benjamin

>
> thanks,
>
> greg k-h
>
>



----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.



\
 
 \ /
  Last update: 2008-05-13 21:35    [W:0.060 / U:2.480 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site