More info about kobj_attribute store and show functions

Lucas Tanure tanure at linux.com
Wed Sep 3 20:10:41 EDT 2014


(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?
My copy_from_user it's not working. Should return zero.

There any Macro or function to test if the pointer *buf *is a kernel
pointer ?

Thanks

Lucas Tanure
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20140903/f170d026/attachment.html 


More information about the Kernelnewbies mailing list