aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2
diff options
context:
space:
mode:
authorTao Ma <tao.ma@oracle.com>2009-08-17 23:19:20 -0400
committerJoel Becker <joel.becker@oracle.com>2009-09-22 23:09:26 -0400
commit93c97087a646429f4dc0d73298d64674ddd5cde8 (patch)
treed6c58b32b031a0e23f86e1574e688585fcc26455 /fs/ocfs2
parent721f69c404c51a5d1dc93fddb48ee936e8e23770 (diff)
ocfs2: Add metaecc for ocfs2_refcount_block.
Add metaecc and journal trigger for ocfs2_refcount_block. Signed-off-by: Tao Ma <tao.ma@oracle.com>
Diffstat (limited to 'fs/ocfs2')
-rw-r--r--fs/ocfs2/journal.c15
-rw-r--r--fs/ocfs2/journal.h3
2 files changed, 18 insertions, 0 deletions
diff --git a/fs/ocfs2/journal.c b/fs/ocfs2/journal.c
index 5b6c0e441445..54c16b66327e 100644
--- a/fs/ocfs2/journal.c
+++ b/fs/ocfs2/journal.c
@@ -555,6 +555,14 @@ static struct ocfs2_triggers eb_triggers = {
555 .ot_offset = offsetof(struct ocfs2_extent_block, h_check), 555 .ot_offset = offsetof(struct ocfs2_extent_block, h_check),
556}; 556};
557 557
558static struct ocfs2_triggers rb_triggers = {
559 .ot_triggers = {
560 .t_commit = ocfs2_commit_trigger,
561 .t_abort = ocfs2_abort_trigger,
562 },
563 .ot_offset = offsetof(struct ocfs2_refcount_block, rf_check),
564};
565
558static struct ocfs2_triggers gd_triggers = { 566static struct ocfs2_triggers gd_triggers = {
559 .ot_triggers = { 567 .ot_triggers = {
560 .t_commit = ocfs2_commit_trigger, 568 .t_commit = ocfs2_commit_trigger,
@@ -677,6 +685,13 @@ int ocfs2_journal_access_eb(handle_t *handle, struct ocfs2_caching_info *ci,
677 return __ocfs2_journal_access(handle, ci, bh, &eb_triggers, type); 685 return __ocfs2_journal_access(handle, ci, bh, &eb_triggers, type);
678} 686}
679 687
688int ocfs2_journal_access_rb(handle_t *handle, struct ocfs2_caching_info *ci,
689 struct buffer_head *bh, int type)
690{
691 return __ocfs2_journal_access(handle, ci, bh, &rb_triggers,
692 type);
693}
694
680int ocfs2_journal_access_gd(handle_t *handle, struct ocfs2_caching_info *ci, 695int ocfs2_journal_access_gd(handle_t *handle, struct ocfs2_caching_info *ci,
681 struct buffer_head *bh, int type) 696 struct buffer_head *bh, int type)
682{ 697{
diff --git a/fs/ocfs2/journal.h b/fs/ocfs2/journal.h
index 6163f28badda..b2dc125c6e9a 100644
--- a/fs/ocfs2/journal.h
+++ b/fs/ocfs2/journal.h
@@ -281,6 +281,9 @@ int ocfs2_journal_access_di(handle_t *handle, struct ocfs2_caching_info *ci,
281/* ocfs2_extent_block */ 281/* ocfs2_extent_block */
282int ocfs2_journal_access_eb(handle_t *handle, struct ocfs2_caching_info *ci, 282int ocfs2_journal_access_eb(handle_t *handle, struct ocfs2_caching_info *ci,
283 struct buffer_head *bh, int type); 283 struct buffer_head *bh, int type);
284/* ocfs2_refcount_block */
285int ocfs2_journal_access_rb(handle_t *handle, struct ocfs2_caching_info *ci,
286 struct buffer_head *bh, int type);
284/* ocfs2_group_desc */ 287/* ocfs2_group_desc */
285int ocfs2_journal_access_gd(handle_t *handle, struct ocfs2_caching_info *ci, 288int ocfs2_journal_access_gd(handle_t *handle, struct ocfs2_caching_info *ci,
286 struct buffer_head *bh, int type); 289 struct buffer_head *bh, int type);