@@ -2502,10 +2502,10 @@ static struct file *do_sync_mmap_readahead(struct vm_fault *vmf)
* mmap read-around
*/
fpin = maybe_unlock_mmap_for_io(vmf, fpin);
- ra->start = max_t(long, 0, offset - ra->ra_pages / 2);
- ra->size = ra->ra_pages;
+ ra->start = rac._index = max_t(long, 0, offset - ra->ra_pages / 2);
+ ra->size = rac._nr_pages = ra->ra_pages;
ra->async_size = ra->ra_pages / 4;
- ra_submit(ra, mapping, file);
+ __do_page_cache_readahead(&rac, ra->async_size);
return fpin;
}
@@ -52,17 +52,6 @@ void unmap_page_range(struct mmu_gather *tlb,
void force_page_cache_readahead(struct readahead_control *);
void __do_page_cache_readahead(struct readahead_control *, unsigned long);
-/*
- * Submit IO for the read-ahead request in file_ra_state.
- */
-static inline void ra_submit(struct file_ra_state *ra,
- struct address_space *mapping, struct file *file)
-{
- DEFINE_READAHEAD(rac, file, mapping, ra->start);
- rac._nr_pages = ra->size;
- __do_page_cache_readahead(&rac, ra->async_size);
-}
-
/**
* page_evictable - test whether a page is evictable
* @page: the page to test
Fold ra_submit() into its last remaining user and pass the previously added readahead_control struct down into __do_page_cache_readahead(). Signed-off-by: David Howells <dhowells@redhat.com> --- mm/filemap.c | 6 +++--- mm/internal.h | 11 ----------- 2 files changed, 3 insertions(+), 14 deletions(-)