Subject: Re: linux-next: Tree for April 30 (CONFIG_SYSFS=n)

From: [email-masked] (Eric W. Biederman)
Date: Wed, 05 May 2010 14:35:03 -0700

Greg KH <[email-masked]> writes:

> On Wed, May 05, 2010 at 09:17:38AM -0700, Randy Dunlap wrote:
>> On Fri, 30 Apr 2010 10:50:16 -0700 Randy Dunlap wrote:
>> 
>> > On Fri, 30 Apr 2010 16:35:38 +1000 Stephen Rothwell wrote:
>> > 
>> > > Hi all,
>> > > 
>> > > Changes since 20100429:
>> > 
>> > 
>> > When CONFIG_SYSFS is disabled:
>> > 
>> > include/linux/sysfs.h:330: error: parameter 1 ('type') has incomplete type
>> 
>> 
>> Still have this in linux-next of May 5-2010.
>
> Eric, this is due to your changes, care to fix it up?

Apologies for not looking at this earlier.  I just took a look
at this and I believe this error is the result of a gcc bug.

This appears to the fragment that doesn't compile.

enum kobj_ns_type;
static inline void sysfs_exit_ns(enum kobj_ns_type type, const void *tag)
{
}

I could either include kobject.h or make the fragment:
static inline void sysfs_exit_ns(int type, const void *tag)
{
}

I really don't like either option. 

Does anyone know how to smack gcc up the side of the head and convince
it has all of the information it needs, and get it to stop complaining?

Eric