Please ignore this patch, I will look more in to this function and will send a new patch in order to make this function neat. On 7 December 2015 at 15:29, Saurabh Sengar <saurabh.truth@xxxxxxxxx> wrote: > Inorder to notify the user that value is not successfuly set in sys > entry, error should be returned from store function instead of count > > Signed-off-by: Saurabh Sengar <saurabh.truth@xxxxxxxxx> > --- > v2: > Hi Dan, > I will look more into this function in my free time. > For now just sending you this patch fixing ERANGE as commented > drivers/staging/speakup/kobjects.c | 4 +++- > drivers/staging/staging.c | 4 ++-- > 2 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/speakup/kobjects.c b/drivers/staging/speakup/kobjects.c > index fdfeb42..509163c 100644 > --- a/drivers/staging/speakup/kobjects.c > +++ b/drivers/staging/speakup/kobjects.c > @@ -640,7 +640,7 @@ ssize_t spk_var_store(struct kobject *kobj, struct kobj_attribute *attr, > len = E_INC; > else > len = E_SET; > - if (kstrtol(cp, 10, &value) == 0) > + if (!kstrtol(cp, 10, &value)) > ret = spk_set_num_var(value, param, len); > else > pr_warn("overflow or parsing error has occurred"); > @@ -688,6 +688,8 @@ ssize_t spk_var_store(struct kobject *kobj, struct kobj_attribute *attr, > > if (ret == -ERESTART) > pr_info("%s reset to default value\n", param->name); > + else if (ret < 0) > + return ret; > return count; > } > EXPORT_SYMBOL_GPL(spk_var_store); > diff --git a/drivers/staging/staging.c b/drivers/staging/staging.c > index 233e589..36dd594 100644 > --- a/drivers/staging/staging.c > +++ b/drivers/staging/staging.c > @@ -2,12 +2,12 @@ > #include <linux/init.h> > #include <linux/module.h> > > -static int __init staging_init(void) > +static int staging_init(void) > { > return 0; > } > > -static void __exit staging_exit(void) > +static void staging_exit(void) > { > } > > -- > 1.9.1 > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel