Loading fs/logfs/journal.c +4 −0 Original line number Original line Diff line number Diff line Loading @@ -800,6 +800,7 @@ void do_logfs_journal_wl_pass(struct super_block *sb) { { struct logfs_super *super = logfs_super(sb); struct logfs_super *super = logfs_super(sb); struct logfs_area *area = super->s_journal_area; struct logfs_area *area = super->s_journal_area; struct btree_head32 *head = &super->s_reserved_segments; u32 segno, ec; u32 segno, ec; int i, err; int i, err; Loading @@ -807,6 +808,7 @@ void do_logfs_journal_wl_pass(struct super_block *sb) /* Drop old segments */ /* Drop old segments */ journal_for_each(i) journal_for_each(i) if (super->s_journal_seg[i]) { if (super->s_journal_seg[i]) { btree_remove32(head, super->s_journal_seg[i]); logfs_set_segment_unreserved(sb, logfs_set_segment_unreserved(sb, super->s_journal_seg[i], super->s_journal_seg[i], super->s_journal_ec[i]); super->s_journal_ec[i]); Loading @@ -819,6 +821,8 @@ void do_logfs_journal_wl_pass(struct super_block *sb) super->s_journal_seg[i] = segno; super->s_journal_seg[i] = segno; super->s_journal_ec[i] = ec; super->s_journal_ec[i] = ec; logfs_set_segment_reserved(sb, segno); logfs_set_segment_reserved(sb, segno); err = btree_insert32(head, segno, (void *)1, GFP_KERNEL); BUG_ON(err); /* mempool should prevent this */ } } /* Manually move journal_area */ /* Manually move journal_area */ freeseg(sb, area->a_segno); freeseg(sb, area->a_segno); Loading Loading
fs/logfs/journal.c +4 −0 Original line number Original line Diff line number Diff line Loading @@ -800,6 +800,7 @@ void do_logfs_journal_wl_pass(struct super_block *sb) { { struct logfs_super *super = logfs_super(sb); struct logfs_super *super = logfs_super(sb); struct logfs_area *area = super->s_journal_area; struct logfs_area *area = super->s_journal_area; struct btree_head32 *head = &super->s_reserved_segments; u32 segno, ec; u32 segno, ec; int i, err; int i, err; Loading @@ -807,6 +808,7 @@ void do_logfs_journal_wl_pass(struct super_block *sb) /* Drop old segments */ /* Drop old segments */ journal_for_each(i) journal_for_each(i) if (super->s_journal_seg[i]) { if (super->s_journal_seg[i]) { btree_remove32(head, super->s_journal_seg[i]); logfs_set_segment_unreserved(sb, logfs_set_segment_unreserved(sb, super->s_journal_seg[i], super->s_journal_seg[i], super->s_journal_ec[i]); super->s_journal_ec[i]); Loading @@ -819,6 +821,8 @@ void do_logfs_journal_wl_pass(struct super_block *sb) super->s_journal_seg[i] = segno; super->s_journal_seg[i] = segno; super->s_journal_ec[i] = ec; super->s_journal_ec[i] = ec; logfs_set_segment_reserved(sb, segno); logfs_set_segment_reserved(sb, segno); err = btree_insert32(head, segno, (void *)1, GFP_KERNEL); BUG_ON(err); /* mempool should prevent this */ } } /* Manually move journal_area */ /* Manually move journal_area */ freeseg(sb, area->a_segno); freeseg(sb, area->a_segno); Loading