On Dec 19 2007 16:30, Greg KH wrote:
>See the example module, samples/kobject/kobject-example.c for an
>implementation of a simple kobject and attributes.

Should mention here that if simple types are enough and a callback
function is not needed, a module_param() could be used instead.

>As a kset contains a kobject within it, it should always be dynamically
>created and never declared statically or on the stack.  To create a new
>kset use:
>  struct kset *kset_create_and_add(char *name,
>                                  struct kset_uevent_ops *u,
>                                  struct kobject *parent);
Hmm... Not const char *?

>If a kset wishes to control the uevent operations of the kobjects
>associated with it, it can use the struct kset_uevent_ops to handle it:
>
>struct kset_uevent_ops {
>        int (*filter)(struct kset *kset, struct kobject *kobj);
>        const char *(*name)(struct kset *kset, struct kobject *kobj);
>        int (*uevent)(struct kset *kset, struct kobject *kobj,
>                      struct kobj_uevent_env *env);
>};
>
>
>The filter function allows a kset to prevent a uevent from being emitted to
>userspace for a specific kobject.  If the function returns 0, the uevent
>will not be emitted.
>
What about other return values? Should filter perhaps return bool instead?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to