Messages in this thread Patch in this message | | | From | Jan Blunck <> | Subject | [PATCH 05/15] flash_read should update ppos instead of file->f_pos | Date | Fri, 20 Nov 2009 17:40:35 +0100 |
| |
flash_read() updates file->f_pos directly instead of the ppos given. The VFS later updates the file->f_pos and overwrites it with the unchanged value of ppos.
Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/sbus/char/flash.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/sbus/char/flash.c b/drivers/sbus/char/flash.c index 4108347..12cd438 100644 --- a/drivers/sbus/char/flash.c +++ b/drivers/sbus/char/flash.c @@ -106,9 +106,9 @@ static ssize_t flash_read(struct file * file, char __user * buf, size_t count, loff_t *ppos) { - unsigned long p = file->f_pos; + loff_t p = *ppos; int i; - + if (count > flash.read_size - p) count = flash.read_size - p; @@ -119,7 +119,7 @@ flash_read(struct file * file, char __user * buf, buf++; } - file->f_pos += count; + *ppos += count; return count; } -- 1.6.4.2
| |