Lines Matching refs:be

17 some terms we will be working with.
21 objects to be arranged into hierarchies), a specific type, and,
29 If it does, the reference counting for the object is sure to be messed
30 up and incorrect, and your code will be buggy. So do not do this.
36 - A kset is a group of kobjects. These kobjects can be of the same ktype
46 approach will be taken, so we'll go back to kobjects.
53 a larger, domain-specific object. To this end, kobjects will be found
55 object-oriented terms, kobjects can be seen as a top-level, abstract class
60 embedding - must be used.
92 embedded *within* a struct uio_map could be converted to a pointer to the
121 The ktype is required for a kobject to be created properly, as every kobject
123 register the kobject with sysfs, the function kobject_add() must be called:
128 properly. If the kobject is to be associated with a specific kset,
129 kobj->kset must be assigned before calling kobject_add(). If a kset is
130 associated with a kobject, then the parent for the kobject can be set to
131 NULL in the call to kobject_add() and then the kobject's parent will be the
135 of the kobject should never be manipulated directly. If you must change
146 incorrect and needs to be fixed.
166 announce to the world that it has been created. This can be done with a
172 This should be done only after any attributes or children of the kobject
177 below), the uevent for KOBJ_REMOVE will be automatically created by the
200 Because kobjects are dynamic, they must not be declared statically or on
206 for your structure, please use the struct kref instead; a kobject would be
216 exception where a single kobject should be created. To create such an
230 with the kobject_create_and_add(), can be of type kobj_attribute, so no
231 special custom attribute is needed to be created.
243 would be little point in using a kobject in the first place. Even
248 The end result is that a structure protected by a kobject cannot be freed
251 be notified asynchronously whenever the last reference to one of its
270 One important point cannot be overstated: every kobject must have a
275 "empty" release function; you will be mocked mercilessly by the kobject
279 must NOT be changed within this callback. Otherwise there will be a memory
296 kobj_type structure; a pointer to that structure must be specified when you
304 The default_attrs pointer is a list of default attributes that will be
310 A kset is merely a collection of kobjects that want to be associated with
311 each other. There is no restriction that they be of the same ktype, but be
316 - It serves as a bag containing a group of objects. A kset can be used by
320 with the kset can show up. Every kset contains a kobject which can be
321 set up to be the parent of other kobjects; the top-level directories of
329 should not be manipulated by any other user.
336 As a kset contains a kobject within it, it should always be dynamically
346 count. When the reference count goes to zero, the kset will be released.
350 An example of using a kset can be seen in the
366 will not be emitted.
368 The name function will be called to override the default name of the kset
369 that the uevent sends to userspace. By default, the name will be the same
372 The uevent function will be called when the uevent is about to be sent to
373 userspace to allow more environment variables to be added to the uevent.
381 If the kobject belonging to a kset has no parent kobject set, it will be
391 must be cleaned up when the code is finished with it. To do that, call
394 sent for the object, a corresponding KOBJ_REMOVE uevent will be sent, and
395 any other sysfs housekeeping will be handled for the caller properly.
404 kobject_del() can be used to drop the reference to the parent object, if
406 parent objects references a child. Circular references _must_ be broken
407 with an explicit call to kobject_del(), so that a release functions will be
415 which will be built as loadable modules if you select CONFIG_SAMPLE_KOBJECT.