X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=mm%2Freadahead.c;h=dfa9a1a03a116c7659d0d71134a3450a8d69026f;hb=646d87b481dab4ba8301716600dfd276605b0ab0;hp=033bc135a41f3885cae863ca0c9f5185d6c5d665;hpb=675c60706cd197219c6e3e6e3f195475d842344e;p=~andy%2Flinux diff --git a/mm/readahead.c b/mm/readahead.c index 033bc135a41..dfa9a1a03a1 100644 --- a/mm/readahead.c +++ b/mm/readahead.c @@ -9,6 +9,7 @@ #include #include +#include #include #include #include @@ -501,6 +502,12 @@ void page_cache_sync_readahead(struct address_space *mapping, if (!ra->ra_pages) return; + /* be dumb */ + if (filp && (filp->f_mode & FMODE_RANDOM)) { + force_page_cache_readahead(mapping, filp, offset, req_size); + return; + } + /* do read-ahead */ ondemand_readahead(mapping, ra, filp, false, offset, req_size); }