hppfs: hppfs_read_file() may return -ERROR
hppfs_read_file() may return (ssize_t) -ENOMEM, or -EFAULT. When stored in size_t 'count', these errors will not be noticed, a large value will be added to *ppos. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
695f6ae0dc
Коммит
880fe76ee6
|
@ -280,7 +280,12 @@ static ssize_t hppfs_read(struct file *file, char __user *buf, size_t count,
|
|||
"errno = %d\n", err);
|
||||
return err;
|
||||
}
|
||||
count = hppfs_read_file(hppfs->host_fd, buf, count);
|
||||
err = hppfs_read_file(hppfs->host_fd, buf, count);
|
||||
if (err < 0) {
|
||||
printk(KERN_ERR "hppfs_read: read failed: %d\n", err);
|
||||
return err;
|
||||
}
|
||||
count = err;
|
||||
if (count > 0)
|
||||
*ppos += count;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче