lkml.org 
[lkml]   [2007]   [Dec]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC] kobject/kset/ktype documentation and example code updated
On Thu, Dec 20, 2007 at 10:04:26AM +0100, Jan Engelhardt wrote:
>
> 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.

Nah, why? module paramaters are pretty well known already :)

> >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 *?

good catch, that's what the .h file shows :)

> >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?

Probably, it was created before there was a 'bool' in the kernel.

thanks,

greg k-h


\
 
 \ /
  Last update: 2007-12-20 22:55    [W:0.122 / U:0.152 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site