More info about kobj_attribute store and show functions

Greg KH greg at kroah.com
Wed Sep 3 20:23:46 EDT 2014


On Wed, Sep 03, 2014 at 09:10:41PM -0300, Lucas Tanure wrote:
> (Forget the last e-mail, please, stupid Gmail)
> 
> Hi,
> 
> I'm looking for some information about :
> 
> struct kobj_attribute {
>         struct attribute attr;
>         ssize_t (*show)(struct kobject *kobj, struct kobj_attribute
> *attr, char *buf);
>         ssize_t (*store)(struct kobject *kobj, struct kobj_attribute
> *attr, const char *buf, size_t count);
> };
> 
> 
> My function to handle the operation:
> 
> static ssize_t my_store(struct kobject *kobj, struct kobj_attribute *attr,
> const char *buf, size_t count) {
>  char *buffer;
> 
>         buffer = (char*) kcalloc(count, sizeof(char), GFP_KERNEL);
> 
>         copy_from_user(buffer, buf, count);
>         .....
>         .....
>         etc....
> }
> 
> So, this *const char *buf, *where ti come from ? Kernel space?

I'm guessing you didn't read the kobject documentation that is in the
kernel tree?



More information about the Kernelnewbies mailing list