On Thu, 29 Nov 2007 10:47:19 -0500 (EST),
Alan Stern <stern@rowland.harvard.edu> wrote:
quoted text > On Thu, 29 Nov 2007, Cornelia Huck wrote:
>
> > > The only problem arises when a child's driver retains a reference to
> > > the parent kobject. If things are done properly, this reference should
> > > involve incrementing the module count -- which would prevent the module
> > > from being unloaded in the first place.
> >
> > This still leaves the possibility that random code may grab a reference
> > once the kobject is present in the tree and lookupable. You gave up the
> > control of the number of references to your object once you made it
> > public.
>
> I don't agree with this argument. Code should never grab random
> references without insuring that the owner of the referenced object is
> pinned. This rule applies to everything, not just kobjects.
Of course. You don't necessarily need prevent module unloading, but pin
the module in memory until the last reference is gone.
quoted text > Unfortunately kobjects don't have an owner field. In practice this
> means that it isn't possible to pin the owner of some random kobject --
> you have to know where the kobject came from or what it's embedded in.
> All users of kobjects need to work this way.
Yeah, that is what the-patchset-I-have-to-dig-around-for does:
Introduce an owner field in the kobject for pinning the module. (IIRC,
you even did some of the patches?)
-
unsubscribe notice To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Messages in current thread:
Re: [RFC] New kobject/kset/ktype documentation and example c... , Cornelia Huck , (Thu Nov 29, 12:28 pm)