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

Cornelia Huck
2007-11-28T16:10:01Z

On Wed, 28 Nov 2007 17:03:07 +0100,
Kay Sievers <kay.sievers@vrfy.org> wrote:

> On Wed, 2007-11-28 at 16:52 +0100, Cornelia Huck wrote:
> > On Wed, 28 Nov 2007 13:35:54 +0100,
> > Kay Sievers <kay.sievers@vrfy.org> wrote:
> >
> > > On Wed, 2007-11-28 at 10:01 +0100, Cornelia Huck wrote:
> > > > On Tue, 27 Nov 2007 15:02:52 -0800, Greg KH <greg@kroah.com> wrote:
> > >
> > > > > Among other things, kobject_init() sets the kobject's reference count to
> > > > > one. Calling kobject_init() is not sufficient, however. Kobject users
> > > > > must, at a minimum, set the name of the kobject; this is the name that will
> > > > > be used in sysfs entries.
> > > >
> > > > Unless they don't register their kobject. (But they should always set a
> > > > name anyway to avoid funny debug messages, so it is probably a good
> > > > idea to call this a "must").
> > >
> > > Yeah, we should require it. And kobject_cleanup() needs to be called to
> > > free the allocated name, if the object is not already added and needs to
> > > be deleted (common in rewinding on error).
> >
> > Always using kobject_put() should take care of that.
>
> Ok, so we can always require a kobject_put() after a kobject_init(), to
> cleanup what happened after _init() and before _add()?

That's a sensible requirement, I think.