Index: linux-2.6.16-rc2-mm1/include/linux/pagemap.h =================================================================== --- linux-2.6.16-rc2-mm1.orig/include/linux/pagemap.h 2006-02-09 20:04:37.000000000 -0800 +++ linux-2.6.16-rc2-mm1/include/linux/pagemap.h 2006-02-11 23:02:21.000000000 -0800 @@ -52,22 +52,24 @@ static inline void mapping_set_gfp_mask( #define page_cache_release(page) put_page(page) void release_pages(struct page **pages, int nr, int cold); -static inline struct page *page_cache_alloc(struct address_space *x) +static inline struct page *page_cache_alloc(struct vm_area_struct *vma, + struct address_space *x) { if (cpuset_mem_spread_check()) { int n = cpuset_mem_spread_node(); return alloc_pages_node(n, mapping_gfp_mask(x), 0); } - return alloc_pages(mapping_gfp_mask(x), 0); + return alloc_pages_vma(vma, mapping_gfp_mask(x), 0); } -static inline struct page *page_cache_alloc_cold(struct address_space *x) +static inline struct page *page_cache_alloc_cold(struct vm_area_struct *vma, + struct address_space *x) { if (cpuset_mem_spread_check()) { int n = cpuset_mem_spread_node(); return alloc_pages_node(n, mapping_gfp_mask(x)|__GFP_COLD, 0); } - return alloc_pages(mapping_gfp_mask(x)|__GFP_COLD, 0); + return alloc_pages_vma(vma, mapping_gfp_mask(x)|__GFP_COLD, 0); } typedef int filler_t(void *, struct page *);