On Wed, 21 Aug 2013 10:41:20 +0800 Chen Gang <gang.chen@xxxxxxxxxxx> wrote: > force_page_cache_readahead() may fail, so need let the related upper > system calls know about it by its return value. > > For system call fadvise64_64(), ignore return value because fadvise() > shall return success even if filesystem can't retrieve a hint. > Actually, force_page_cache_readahead() cannot fail - I see no code path via which it returns a -ve errno. Of course, that might change in the future and although readahead is usually a best-effort-dont-care-if-it-fails thing, I suppose that in the case of madvise() and sys_readahead() we should inform userspace, as readhead is the primary reason for thier performing the syscall. While we're there, please review... From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm/readahead.c:do_readhead(): don't check for ->readpage The callee force_page_cache_readahead() already does this and unlike do_readahead(), force_page_cache_readahead() remembers to check for ->readpages() as well. Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/readahead.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN mm/readahead.c~a mm/readahead.c --- a/mm/readahead.c~a +++ a/mm/readahead.c @@ -569,7 +569,7 @@ static ssize_t do_readahead(struct address_space *mapping, struct file *filp, pgoff_t index, unsigned long nr) { - if (!mapping || !mapping->a_ops || !mapping->a_ops->readpage) + if (!mapping || !mapping->a_ops) return -EINVAL; return force_page_cache_readahead(mapping, filp, index, nr); _ -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>