czw., 28 mar 2019 o 14:11 Mukesh Ojha <mojha@xxxxxxxxxxxxxx> napisał(a): > > > On 3/28/2019 4:30 PM, Bartosz Golaszewski wrote: > > From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > > > > Calling read() for a single byte read will return 2 currently. Use > > simple_read_from_buffer() which correctly handles all sizes. > > > > Fixes: 2a9e27408e12 ("gpio: mockup: rework debugfs interface") > > Signed-off-by: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > > --- > > drivers/gpio/gpio-mockup.c | 7 +------ > > 1 file changed, 1 insertion(+), 6 deletions(-) > > > > diff --git a/drivers/gpio/gpio-mockup.c b/drivers/gpio/gpio-mockup.c > > index 74ba8b1d71d8..859585dce5c9 100644 > > --- a/drivers/gpio/gpio-mockup.c > > +++ b/drivers/gpio/gpio-mockup.c > > @@ -219,12 +219,7 @@ static ssize_t gpio_mockup_debugfs_read(struct file *file, > > val = gpio_mockup_get(gc, priv->offset); > > cnt = snprintf(buf, sizeof(buf), "%d\n", val); > > > why \n is inserted in the buf.. > Because this is how all the attributes work - you read the value + '\n'. > rv variable is unused now. > > > > > - rv = copy_to_user(usr_buf, buf, cnt); > > - if (rv) > > - return rv; > > - > > - *ppos += cnt; > > - return cnt; > > + return simple_read_from_buffer(usr_buf, size, ppos, buf, cnt); > > > > Looks good to me. > Remove the unused variable. > Thanks, removed that and a stray newline. Bart > Reviewed-by: Mukesh Ojha <mojha@xxxxxxxxxxxxxx> > > -Mukesh > > > } > > > > static ssize_t gpio_mockup_debugfs_write(struct file *file,