[PATCH] splice: call handle_ra_miss() on failure to lookup page
authorJens Axboe <axboe@suse.de>
Mon, 1 May 2006 17:59:54 +0000 (19:59 +0200)
committerJens Axboe <axboe@suse.de>
Mon, 1 May 2006 17:59:54 +0000 (19:59 +0200)
Notify the readahead logic of the missing page. Suggested by
Oleg Nesterov.

Signed-off-by: Jens Axboe <axboe@suse.de>
fs/splice.c

index d7538d83c36729f6e81d0c5eab04babe9a98c825..0a6916423e7d264a3cdf0c127052d0af1b4bd665 100644 (file)
@@ -301,6 +301,12 @@ __generic_file_splice_read(struct file *in, loff_t *ppos,
                 */
                page = find_get_page(mapping, index);
                if (!page) {
+                       /*
+                        * Make sure the read-ahead engine is notified
+                        * about this failure.
+                        */
+                       handle_ra_miss(mapping, &in->f_ra, index);
+
                        /*
                         * page didn't exist, allocate one.
                         */