diff options
author | Jan Kara <jack@suse.cz> | 2013-11-12 18:07:08 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-12 22:09:02 -0500 |
commit | 41ecc345984bcc8bf341a3e758c1eb3fc543dd83 (patch) | |
tree | 6b1d1e3a3f47b1ec5182e466d737f0496744013c /fs/ocfs2/aops.c | |
parent | d00d2f8ab9f20f8e6a0fc3804847b418498d80b8 (diff) |
ocfs2: simplify ocfs2_invalidatepage() and ocfs2_releasepage()
Ocfs2 doesn't do data journalling. Thus its ->invalidatepage and
->releasepage functions never get called on buffers that have journal
heads attached. So just use standard variants of functions from
buffer.c.
Signed-off-by: Jan Kara <jack@suse.cz>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Mark Fasheh <mfasheh@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/ocfs2/aops.c')
-rw-r--r-- | fs/ocfs2/aops.c | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c index f959a1532767..aeb44e879c51 100644 --- a/fs/ocfs2/aops.c +++ b/fs/ocfs2/aops.c | |||
@@ -594,26 +594,11 @@ static void ocfs2_dio_end_io(struct kiocb *iocb, | |||
594 | ocfs2_rw_unlock(inode, level); | 594 | ocfs2_rw_unlock(inode, level); |
595 | } | 595 | } |
596 | 596 | ||
597 | /* | ||
598 | * ocfs2_invalidatepage() and ocfs2_releasepage() are shamelessly stolen | ||
599 | * from ext3. PageChecked() bits have been removed as OCFS2 does not | ||
600 | * do journalled data. | ||
601 | */ | ||
602 | static void ocfs2_invalidatepage(struct page *page, unsigned int offset, | ||
603 | unsigned int length) | ||
604 | { | ||
605 | journal_t *journal = OCFS2_SB(page->mapping->host->i_sb)->journal->j_journal; | ||
606 | |||
607 | jbd2_journal_invalidatepage(journal, page, offset, length); | ||
608 | } | ||
609 | |||
610 | static int ocfs2_releasepage(struct page *page, gfp_t wait) | 597 | static int ocfs2_releasepage(struct page *page, gfp_t wait) |
611 | { | 598 | { |
612 | journal_t *journal = OCFS2_SB(page->mapping->host->i_sb)->journal->j_journal; | ||
613 | |||
614 | if (!page_has_buffers(page)) | 599 | if (!page_has_buffers(page)) |
615 | return 0; | 600 | return 0; |
616 | return jbd2_journal_try_to_free_buffers(journal, page, wait); | 601 | return try_to_free_buffers(page); |
617 | } | 602 | } |
618 | 603 | ||
619 | static ssize_t ocfs2_direct_IO(int rw, | 604 | static ssize_t ocfs2_direct_IO(int rw, |
@@ -2092,7 +2077,7 @@ const struct address_space_operations ocfs2_aops = { | |||
2092 | .write_end = ocfs2_write_end, | 2077 | .write_end = ocfs2_write_end, |
2093 | .bmap = ocfs2_bmap, | 2078 | .bmap = ocfs2_bmap, |
2094 | .direct_IO = ocfs2_direct_IO, | 2079 | .direct_IO = ocfs2_direct_IO, |
2095 | .invalidatepage = ocfs2_invalidatepage, | 2080 | .invalidatepage = block_invalidatepage, |
2096 | .releasepage = ocfs2_releasepage, | 2081 | .releasepage = ocfs2_releasepage, |
2097 | .migratepage = buffer_migrate_page, | 2082 | .migratepage = buffer_migrate_page, |
2098 | .is_partially_uptodate = block_is_partially_uptodate, | 2083 | .is_partially_uptodate = block_is_partially_uptodate, |