aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nilfs2/dir.c
diff options
context:
space:
mode:
authorRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2010-07-24 04:09:10 -0400
committerRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2010-07-24 04:36:29 -0400
commitc28e69d9332aab739920082a0a5677d861390824 (patch)
treeb51e3cb03298c8f2d3d1443647b7a6e75af5d4c6 /fs/nilfs2/dir.c
parentc5ca48aabe8b11674bf1102abe52d17ecc053f9c (diff)
nilfs2: simplify nilfs_get_page function
Implementation of nilfs_get_page() is a bit old as below: - A common read_mapping_page inline function is now available instead of its read_cache_page use. - wait_on_page_locked() use in the function is eliminable since read_cache_page function does the same thing through wait_on_page_read(). - PageUptodate() check is eliminable for the same reason. This renews nilfs_get_page() based on these points. Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Diffstat (limited to 'fs/nilfs2/dir.c')
-rw-r--r--fs/nilfs2/dir.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/nilfs2/dir.c b/fs/nilfs2/dir.c
index 85c89dfc71f0..d8d183e6d095 100644
--- a/fs/nilfs2/dir.c
+++ b/fs/nilfs2/dir.c
@@ -199,13 +199,10 @@ fail:
199static struct page *nilfs_get_page(struct inode *dir, unsigned long n) 199static struct page *nilfs_get_page(struct inode *dir, unsigned long n)
200{ 200{
201 struct address_space *mapping = dir->i_mapping; 201 struct address_space *mapping = dir->i_mapping;
202 struct page *page = read_cache_page(mapping, n, 202 struct page *page = read_mapping_page(mapping, n, NULL);
203 (filler_t *)mapping->a_ops->readpage, NULL); 203
204 if (!IS_ERR(page)) { 204 if (!IS_ERR(page)) {
205 wait_on_page_locked(page);
206 kmap(page); 205 kmap(page);
207 if (!PageUptodate(page))
208 goto fail;
209 if (!PageChecked(page)) 206 if (!PageChecked(page))
210 nilfs_check_page(page); 207 nilfs_check_page(page);
211 if (PageError(page)) 208 if (PageError(page))