From f3a9b636b38756c67fc9a3edf2db3088dfd7fd3c Mon Sep 17 00:00:00 2001 From: SecureCRT Date: Mon, 20 Aug 2012 23:10:46 +0800 Subject: [PATCH] Revert "mm/fs: add hooks to support cleancache" This reverts commit 3d343ac32afc6eb933d98eb2dc4b3ad532de7f3a. --- fs/buffer.c | 5 ----- fs/mpage.c | 7 ------- fs/super.c | 3 --- mm/filemap.c | 11 ----------- mm/truncate.c | 8 +------- 5 files changed, 1 insertion(+), 33 deletions(-) mode change 100755 => 100644 fs/buffer.c mode change 100755 => 100644 fs/mpage.c mode change 100755 => 100644 fs/super.c mode change 100755 => 100644 mm/filemap.c mode change 100755 => 100644 mm/truncate.c diff --git a/fs/buffer.c b/fs/buffer.c old mode 100755 new mode 100644 index abf188f3..6fa53025 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -41,7 +41,6 @@ #include #include #include -#include static int fsync_buffers_list(spinlock_t *lock, struct list_head *list); @@ -277,10 +276,6 @@ void invalidate_bdev(struct block_device *bdev) invalidate_bh_lrus(); invalidate_mapping_pages(mapping, 0, -1); - /* 99% of the time, we don't need to flush the cleancache on the bdev. - * But, for the strange corners, lets be cautious - */ - cleancache_flush_inode(mapping); } EXPORT_SYMBOL(invalidate_bdev); diff --git a/fs/mpage.c b/fs/mpage.c old mode 100755 new mode 100644 index b5677aba..42381bd6 --- a/fs/mpage.c +++ b/fs/mpage.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * I/O completion handler for multipage BIOs. @@ -285,12 +284,6 @@ do_mpage_readpage(struct bio *bio, struct page *page, unsigned nr_pages, } else if (fully_mapped) { SetPageMappedToDisk(page); } - - if (fully_mapped && blocks_per_page == 1 && !PageUptodate(page) && - cleancache_get_page(page) == 0) { - SetPageUptodate(page); - goto confused; - } /* * This page will go to BIO. Do we need to send this BIO off first? diff --git a/fs/super.c b/fs/super.c old mode 100755 new mode 100644 index a0ba74eb..aff046b0 --- a/fs/super.c +++ b/fs/super.c @@ -38,7 +38,6 @@ #include #include #include -#include #include "internal.h" @@ -105,7 +104,6 @@ static struct super_block *alloc_super(struct file_system_type *type) s->s_qcop = sb_quotactl_ops; s->s_op = &default_op; s->s_time_gran = 1000000000; - s->cleancache_poolid = -1; } out: return s; @@ -221,7 +219,6 @@ void deactivate_locked_super(struct super_block *s) s->s_count -= S_BIAS-1; spin_unlock(&sb_lock); vfs_dq_off(s, 0); - cleancache_flush_fs(s); fs->kill_sb(s); put_filesystem(fs); put_super(s); diff --git a/mm/filemap.c b/mm/filemap.c old mode 100755 new mode 100644 index a4399ff2..8e96c907 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -34,7 +34,6 @@ #include /* for BUG_ON(!in_atomic()) only */ #include #include /* for page_is_file_cache() */ -#include #include "internal.h" /* @@ -120,16 +119,6 @@ void __remove_from_page_cache(struct page *page) { struct address_space *mapping = page->mapping; - /* - * if we're uptodate, flush out into the cleancache, otherwise - * invalidate any existing cleancache entries. We can't leave - * stale data around in the cleancache once our page is gone - */ - if (PageUptodate(page) && PageMappedToDisk(page)) - cleancache_put_page(page); - else - cleancache_flush_page(mapping, page); - radix_tree_delete(&mapping->page_tree, page->index); page->mapping = NULL; mapping->nrpages--; diff --git a/mm/truncate.c b/mm/truncate.c old mode 100755 new mode 100644 index 31c639ea..258bda7e --- a/mm/truncate.c +++ b/mm/truncate.c @@ -18,7 +18,6 @@ #include #include /* grr. try_to_release_page, do_invalidatepage */ -#include #include "internal.h" @@ -51,7 +50,6 @@ void do_invalidatepage(struct page *page, unsigned long offset) static inline void truncate_partial_page(struct page *page, unsigned partial) { zero_user_segment(page, partial, PAGE_CACHE_SIZE); - cleancache_flush_page(page->mapping, page); if (page_has_private(page)) do_invalidatepage(page, partial); } @@ -215,8 +213,7 @@ void truncate_inode_pages_range(struct address_space *mapping, struct pagevec pvec; pgoff_t next; int i; - - cleancache_flush_inode(mapping); + if (mapping->nrpages == 0) return; @@ -290,7 +287,6 @@ void truncate_inode_pages_range(struct address_space *mapping, } pagevec_release(&pvec); } - cleancache_flush_inode(mapping); } EXPORT_SYMBOL(truncate_inode_pages_range); @@ -427,7 +423,6 @@ int invalidate_inode_pages2_range(struct address_space *mapping, int did_range_unmap = 0; int wrapped = 0; - cleancache_flush_inode(mapping); pagevec_init(&pvec, 0); next = start; while (next <= end && !wrapped && @@ -484,7 +479,6 @@ int invalidate_inode_pages2_range(struct address_space *mapping, pagevec_release(&pvec); cond_resched(); } - cleancache_flush_inode(mapping); return ret; } EXPORT_SYMBOL_GPL(invalidate_inode_pages2_range);