]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - mm/readahead.c
[PATCH] AOP_TRUNCATED_PAGE victims in read_pages() belong in the LRU
[net-next-2.6.git] / mm / readahead.c
index 0f142a40984b1674228e067f491159d42b13f32d..4ee52cadab9371f4d22522489b5d4cec1be2125b 100644 (file)
@@ -182,14 +182,11 @@ static int read_pages(struct address_space *mapping, struct file *filp,
                list_del(&page->lru);
                if (!add_to_page_cache(page, mapping,
                                        page->index, GFP_KERNEL)) {
-                       ret = mapping->a_ops->readpage(filp, page);
-                       if (ret != AOP_TRUNCATED_PAGE) {
-                               if (!pagevec_add(&lru_pvec, page))
-                                       __pagevec_lru_add(&lru_pvec);
-                               continue;
-                       } /* else fall through to release */
-               }
-               page_cache_release(page);
+                       mapping->a_ops->readpage(filp, page);
+                       if (!pagevec_add(&lru_pvec, page))
+                               __pagevec_lru_add(&lru_pvec);
+               } else
+                       page_cache_release(page);
        }
        pagevec_lru_add(&lru_pvec);
        ret = 0;