mm: simplify lock_page_memcg()
[cascardo/linux.git] / fs / buffer.c
index dc99151..33be296 100644 (file)
@@ -624,14 +624,14 @@ EXPORT_SYMBOL(mark_buffer_dirty_inode);
  * The caller must hold lock_page_memcg().
  */
 static void __set_page_dirty(struct page *page, struct address_space *mapping,
-                            struct mem_cgroup *memcg, int warn)
+                            int warn)
 {
        unsigned long flags;
 
        spin_lock_irqsave(&mapping->tree_lock, flags);
        if (page->mapping) {    /* Race with truncate? */
                WARN_ON_ONCE(warn && !PageUptodate(page));
-               account_page_dirtied(page, mapping, memcg);
+               account_page_dirtied(page, mapping);
                radix_tree_tag_set(&mapping->page_tree,
                                page_index(page), PAGECACHE_TAG_DIRTY);
        }
@@ -666,7 +666,6 @@ static void __set_page_dirty(struct page *page, struct address_space *mapping,
 int __set_page_dirty_buffers(struct page *page)
 {
        int newly_dirty;
-       struct mem_cgroup *memcg;
        struct address_space *mapping = page_mapping(page);
 
        if (unlikely(!mapping))
@@ -686,14 +685,14 @@ int __set_page_dirty_buffers(struct page *page)
         * Lock out page->mem_cgroup migration to keep PageDirty
         * synchronized with per-memcg dirty page counters.
         */
-       memcg = lock_page_memcg(page);
+       lock_page_memcg(page);
        newly_dirty = !TestSetPageDirty(page);
        spin_unlock(&mapping->private_lock);
 
        if (newly_dirty)
-               __set_page_dirty(page, mapping, memcg, 1);
+               __set_page_dirty(page, mapping, 1);
 
-       unlock_page_memcg(memcg);
+       unlock_page_memcg(page);
 
        if (newly_dirty)
                __mark_inode_dirty(mapping->host, I_DIRTY_PAGES);
@@ -1167,15 +1166,14 @@ void mark_buffer_dirty(struct buffer_head *bh)
        if (!test_set_buffer_dirty(bh)) {
                struct page *page = bh->b_page;
                struct address_space *mapping = NULL;
-               struct mem_cgroup *memcg;
 
-               memcg = lock_page_memcg(page);
+               lock_page_memcg(page);
                if (!TestSetPageDirty(page)) {
                        mapping = page_mapping(page);
                        if (mapping)
-                               __set_page_dirty(page, mapping, memcg, 0);
+                               __set_page_dirty(page, mapping, 0);
                }
-               unlock_page_memcg(memcg);
+               unlock_page_memcg(page);
                if (mapping)
                        __mark_inode_dirty(mapping->host, I_DIRTY_PAGES);
        }