phy: mediatek: Make PHY_MTK_{XSPHY, TPHY} depend on HAS_IOMEM and OF_ADDRESS to fix...
[linux-2.6-microblaze.git] / fs / buffer.c
index 50bbc99..23f6456 100644 (file)
@@ -842,13 +842,13 @@ struct buffer_head *alloc_page_buffers(struct page *page, unsigned long size,
        struct buffer_head *bh, *head;
        gfp_t gfp = GFP_NOFS | __GFP_ACCOUNT;
        long offset;
-       struct mem_cgroup *memcg;
+       struct mem_cgroup *memcg, *old_memcg;
 
        if (retry)
                gfp |= __GFP_NOFAIL;
 
        memcg = get_mem_cgroup_from_page(page);
-       memalloc_use_memcg(memcg);
+       old_memcg = set_active_memcg(memcg);
 
        head = NULL;
        offset = PAGE_SIZE;
@@ -867,7 +867,7 @@ struct buffer_head *alloc_page_buffers(struct page *page, unsigned long size,
                set_bh_page(bh, page, offset);
        }
 out:
-       memalloc_unuse_memcg();
+       set_active_memcg(old_memcg);
        mem_cgroup_put(memcg);
        return head;
 /*
@@ -2771,16 +2771,6 @@ int nobh_writepage(struct page *page, get_block_t *get_block,
        /* Is the page fully outside i_size? (truncate in progress) */
        offset = i_size & (PAGE_SIZE-1);
        if (page->index >= end_index+1 || !offset) {
-               /*
-                * The page may have dirty, unmapped buffers.  For example,
-                * they may have been added in ext3_writepage().  Make them
-                * freeable here, so the page does not leak.
-                */
-#if 0
-               /* Not really sure about this  - do we need this ? */
-               if (page->mapping->a_ops->invalidatepage)
-                       page->mapping->a_ops->invalidatepage(page, offset);
-#endif
                unlock_page(page);
                return 0; /* don't care */
        }
@@ -2975,12 +2965,6 @@ int block_write_full_page(struct page *page, get_block_t *get_block,
        /* Is the page fully outside i_size? (truncate in progress) */
        offset = i_size & (PAGE_SIZE-1);
        if (page->index >= end_index+1 || !offset) {
-               /*
-                * The page may have dirty, unmapped buffers.  For example,
-                * they may have been added in ext3_writepage().  Make them
-                * freeable here, so the page does not leak.
-                */
-               do_invalidatepage(page, 0, PAGE_SIZE);
                unlock_page(page);
                return 0; /* don't care */
        }