mm/filemap: simplify generic_file_read_iter
Avoid the pointless goto out just for returning retval. Link: https://lkml.kernel.org/r/20210122160140.223228-19-willy@infradead.org Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Kent Overstreet <kent.overstreet@gmail.com> Cc: Miaohe Lin <linmiaohe@huawei.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
87fa0f3eb2
commit
826ea860bc
10
mm/filemap.c
10
mm/filemap.c
|
@ -2543,7 +2543,7 @@ generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
|
||||||
ssize_t retval = 0;
|
ssize_t retval = 0;
|
||||||
|
|
||||||
if (!count)
|
if (!count)
|
||||||
goto out; /* skip atime */
|
return 0; /* skip atime */
|
||||||
|
|
||||||
if (iocb->ki_flags & IOCB_DIRECT) {
|
if (iocb->ki_flags & IOCB_DIRECT) {
|
||||||
struct file *file = iocb->ki_filp;
|
struct file *file = iocb->ki_filp;
|
||||||
|
@ -2561,7 +2561,7 @@ generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
|
||||||
iocb->ki_pos,
|
iocb->ki_pos,
|
||||||
iocb->ki_pos + count - 1);
|
iocb->ki_pos + count - 1);
|
||||||
if (retval < 0)
|
if (retval < 0)
|
||||||
goto out;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
file_accessed(file);
|
file_accessed(file);
|
||||||
|
@ -2585,12 +2585,10 @@ generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
|
||||||
*/
|
*/
|
||||||
if (retval < 0 || !count || iocb->ki_pos >= size ||
|
if (retval < 0 || !count || iocb->ki_pos >= size ||
|
||||||
IS_DAX(inode))
|
IS_DAX(inode))
|
||||||
goto out;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
retval = filemap_read(iocb, iter, retval);
|
return filemap_read(iocb, iter, retval);
|
||||||
out:
|
|
||||||
return retval;
|
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(generic_file_read_iter);
|
EXPORT_SYMBOL(generic_file_read_iter);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue