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 | |
| 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>
| -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, |
