lightnvm: missing free on init error
[linux-2.6-block.git] / mm / readahead.c
index 998ad592f408332135d107c442e0beb879eb5d58..ba22d7fe0afbae6e8e1568a9564b6dd6399ca964 100644 (file)
@@ -90,7 +90,7 @@ int read_cache_pages(struct address_space *mapping, struct list_head *pages,
                page = list_to_page(pages);
                list_del(&page->lru);
                if (add_to_page_cache_lru(page, mapping, page->index,
-                               GFP_KERNEL & mapping_gfp_mask(mapping))) {
+                               mapping_gfp_constraint(mapping, GFP_KERNEL))) {
                        read_cache_pages_invalidate_page(mapping, page);
                        continue;
                }
@@ -128,7 +128,7 @@ static int read_pages(struct address_space *mapping, struct file *filp,
                struct page *page = list_to_page(pages);
                list_del(&page->lru);
                if (!add_to_page_cache_lru(page, mapping, page->index,
-                               GFP_KERNEL & mapping_gfp_mask(mapping))) {
+                               mapping_gfp_constraint(mapping, GFP_KERNEL))) {
                        mapping->a_ops->readpage(filp, page);
                }
                page_cache_release(page);