Re: [RFC] New kobject/kset/ktype documentation and example code

Kay Sievers
2007-11-28T19:46:59Z

On Wed, 2007-11-28 at 14:36 -0500, Alan Stern wrote:
> On Wed, 28 Nov 2007, Kay Sievers wrote:
>
> > > Actually the current code doesn't seem to check whether kobj->ktype is
> > > NULL or to use the value of kobj->kset->kobj.ktype. Is this an oversight?
> >
> > We just require the ktype.
>
> No -- we should but we don't. Look at the code for kobject_init() and
> kobject_add() in Greg's tree and you'll see. Neither of them checks
> that kobj->ktype is set.

Yeah, it was another "magic" that was built into the core, the code even
tried to find sysfs_ops for completely untyped kobjects. That is gone
now, and we should just require a ktype, I think.

> > > If there is no containing kset, the parent remains NULL. What happens
> > > then? Does the kobject show up in the sysfs top-level directory?
> >
> > "If the kobject belonging to a kset has no parent kobject set, it will
> > be added to the kset's directory. Not all members of a kset do
> > necessarily live in the kset directory. If an explicit parent kobject is
> > assigned before the kobject is added, the kobject is registered with the
> > kset, but added below the parent kobject."
>
> Yes, but what if neither kobj->parent nor kobj->kset is set?

It will show up in the root of sysfs, yes.

Kay