mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-27 17:11:46 +00:00
readahead: split ondemand readahead interface into two functions
Split ondemand readahead interface into two functions. I think this makes it a little clearer for non-readahead experts (like Rusty). Internally they both call ondemand_readahead(), but the page argument is changed to an obvious boolean flag. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Fengguang Wu <wfg@mail.ustc.edu.cn> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
fe3cba17c4
commit
cf914a7d65
6 changed files with 85 additions and 56 deletions
|
@ -295,8 +295,8 @@ __generic_file_splice_read(struct file *in, loff_t *ppos,
|
|||
* readahead/allocate the rest and fill in the holes.
|
||||
*/
|
||||
if (spd.nr_pages < nr_pages)
|
||||
page_cache_readahead_ondemand(mapping, &in->f_ra, in,
|
||||
NULL, index, req_pages - spd.nr_pages);
|
||||
page_cache_sync_readahead(mapping, &in->f_ra, in,
|
||||
index, req_pages - spd.nr_pages);
|
||||
|
||||
error = 0;
|
||||
while (spd.nr_pages < nr_pages) {
|
||||
|
@ -352,7 +352,7 @@ __generic_file_splice_read(struct file *in, loff_t *ppos,
|
|||
page = pages[page_nr];
|
||||
|
||||
if (PageReadahead(page))
|
||||
page_cache_readahead_ondemand(mapping, &in->f_ra, in,
|
||||
page_cache_async_readahead(mapping, &in->f_ra, in,
|
||||
page, index, req_pages - page_nr);
|
||||
|
||||
/*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue