diff options
author | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2010-12-26 10:07:30 -0500 |
---|---|---|
committer | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2011-01-10 00:38:39 -0500 |
commit | 365e215ce1f154e288ff0f7c9acbdf5421f57949 (patch) | |
tree | 864a8cadeb2c373a0fbbbd90464cf745ac7616f7 /fs/nilfs2/segment.c | |
parent | bcbc8c648d6cc88f771435d8031c1a13e00945ed (diff) |
nilfs2: unfold nilfs_dat_inode function
nilfs_dat_inode function was a wrapper to switch between normal dat
inode and gcdat, a clone of the dat inode for garbage collection.
This function got obsolete when the gcdat inode was removed, and now
we can access the dat inode directly from a nilfs object. So, we will
unfold the wrapper and remove it.
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Diffstat (limited to 'fs/nilfs2/segment.c')
-rw-r--r-- | fs/nilfs2/segment.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/fs/nilfs2/segment.c b/fs/nilfs2/segment.c index efc7d0a1bbf7..55ebae5c7f39 100644 --- a/fs/nilfs2/segment.c +++ b/fs/nilfs2/segment.c | |||
@@ -757,9 +757,8 @@ static int nilfs_test_metadata_dirty(struct the_nilfs *nilfs, | |||
757 | ret++; | 757 | ret++; |
758 | if (nilfs_mdt_fetch_dirty(nilfs->ns_sufile)) | 758 | if (nilfs_mdt_fetch_dirty(nilfs->ns_sufile)) |
759 | ret++; | 759 | ret++; |
760 | if (ret || nilfs_doing_gc()) | 760 | if ((ret || nilfs_doing_gc()) && nilfs_mdt_fetch_dirty(nilfs->ns_dat)) |
761 | if (nilfs_mdt_fetch_dirty(nilfs_dat_inode(nilfs))) | 761 | ret++; |
762 | ret++; | ||
763 | return ret; | 762 | return ret; |
764 | } | 763 | } |
765 | 764 | ||
@@ -795,7 +794,7 @@ static void nilfs_segctor_clear_metadata_dirty(struct nilfs_sc_info *sci) | |||
795 | nilfs_mdt_clear_dirty(sci->sc_root->ifile); | 794 | nilfs_mdt_clear_dirty(sci->sc_root->ifile); |
796 | nilfs_mdt_clear_dirty(nilfs->ns_cpfile); | 795 | nilfs_mdt_clear_dirty(nilfs->ns_cpfile); |
797 | nilfs_mdt_clear_dirty(nilfs->ns_sufile); | 796 | nilfs_mdt_clear_dirty(nilfs->ns_sufile); |
798 | nilfs_mdt_clear_dirty(nilfs_dat_inode(nilfs)); | 797 | nilfs_mdt_clear_dirty(nilfs->ns_dat); |
799 | } | 798 | } |
800 | 799 | ||
801 | static int nilfs_segctor_create_checkpoint(struct nilfs_sc_info *sci) | 800 | static int nilfs_segctor_create_checkpoint(struct nilfs_sc_info *sci) |
@@ -904,7 +903,7 @@ static void nilfs_segctor_fill_in_super_root(struct nilfs_sc_info *sci, | |||
904 | nilfs->ns_nongc_ctime : sci->sc_seg_ctime); | 903 | nilfs->ns_nongc_ctime : sci->sc_seg_ctime); |
905 | raw_sr->sr_flags = 0; | 904 | raw_sr->sr_flags = 0; |
906 | 905 | ||
907 | nilfs_write_inode_common(nilfs_dat_inode(nilfs), (void *)raw_sr + | 906 | nilfs_write_inode_common(nilfs->ns_dat, (void *)raw_sr + |
908 | NILFS_SR_DAT_OFFSET(isz), 1); | 907 | NILFS_SR_DAT_OFFSET(isz), 1); |
909 | nilfs_write_inode_common(nilfs->ns_cpfile, (void *)raw_sr + | 908 | nilfs_write_inode_common(nilfs->ns_cpfile, (void *)raw_sr + |
910 | NILFS_SR_CPFILE_OFFSET(isz), 1); | 909 | NILFS_SR_CPFILE_OFFSET(isz), 1); |
@@ -1160,7 +1159,7 @@ static int nilfs_segctor_collect_blocks(struct nilfs_sc_info *sci, int mode) | |||
1160 | sci->sc_stage.scnt++; /* Fall through */ | 1159 | sci->sc_stage.scnt++; /* Fall through */ |
1161 | case NILFS_ST_DAT: | 1160 | case NILFS_ST_DAT: |
1162 | dat_stage: | 1161 | dat_stage: |
1163 | err = nilfs_segctor_scan_file(sci, nilfs_dat_inode(nilfs), | 1162 | err = nilfs_segctor_scan_file(sci, nilfs->ns_dat, |
1164 | &nilfs_sc_dat_ops); | 1163 | &nilfs_sc_dat_ops); |
1165 | if (unlikely(err)) | 1164 | if (unlikely(err)) |
1166 | break; | 1165 | break; |