diff options
Diffstat (limited to 'fs/nilfs2/bmap.c')
-rw-r--r-- | fs/nilfs2/bmap.c | 36 |
1 files changed, 8 insertions, 28 deletions
diff --git a/fs/nilfs2/bmap.c b/fs/nilfs2/bmap.c index 064279e..4f2523f 100644 --- a/fs/nilfs2/bmap.c +++ b/fs/nilfs2/bmap.c @@ -511,24 +511,16 @@ static void nilfs_bmap_abort_alloc_v(struct nilfs_bmap *bmap, nilfs_dat_abort_alloc(nilfs_bmap_get_dat(bmap), &req->bpr_req); } -static int nilfs_bmap_prepare_start_v(struct nilfs_bmap *bmap, - union nilfs_bmap_ptr_req *req) +int nilfs_bmap_start_v(struct nilfs_bmap *bmap, union nilfs_bmap_ptr_req *req, + sector_t blocknr) { - return nilfs_dat_prepare_start(nilfs_bmap_get_dat(bmap), &req->bpr_req); -} - -static void nilfs_bmap_commit_start_v(struct nilfs_bmap *bmap, - union nilfs_bmap_ptr_req *req, - sector_t blocknr) -{ - nilfs_dat_commit_start(nilfs_bmap_get_dat(bmap), &req->bpr_req, - blocknr); -} + struct inode *dat = nilfs_bmap_get_dat(bmap); + int ret; -static void nilfs_bmap_abort_start_v(struct nilfs_bmap *bmap, - union nilfs_bmap_ptr_req *req) -{ - nilfs_dat_abort_start(nilfs_bmap_get_dat(bmap), &req->bpr_req); + ret = nilfs_dat_prepare_start(dat, &req->bpr_req); + if (likely(!ret)) + nilfs_dat_commit_start(dat, &req->bpr_req, blocknr); + return ret; } static int nilfs_bmap_prepare_end_v(struct nilfs_bmap *bmap, @@ -636,9 +628,6 @@ static const struct nilfs_bmap_ptr_operations nilfs_bmap_ptr_ops_v = { .bpop_prepare_alloc_ptr = nilfs_bmap_prepare_alloc_v, .bpop_commit_alloc_ptr = nilfs_bmap_commit_alloc_v, .bpop_abort_alloc_ptr = nilfs_bmap_abort_alloc_v, - .bpop_prepare_start_ptr = nilfs_bmap_prepare_start_v, - .bpop_commit_start_ptr = nilfs_bmap_commit_start_v, - .bpop_abort_start_ptr = nilfs_bmap_abort_start_v, .bpop_prepare_end_ptr = nilfs_bmap_prepare_end_v, .bpop_commit_end_ptr = nilfs_bmap_commit_end_v, .bpop_abort_end_ptr = nilfs_bmap_abort_end_v, @@ -650,9 +639,6 @@ static const struct nilfs_bmap_ptr_operations nilfs_bmap_ptr_ops_vmdt = { .bpop_prepare_alloc_ptr = nilfs_bmap_prepare_alloc_v, .bpop_commit_alloc_ptr = nilfs_bmap_commit_alloc_v, .bpop_abort_alloc_ptr = nilfs_bmap_abort_alloc_v, - .bpop_prepare_start_ptr = nilfs_bmap_prepare_start_v, - .bpop_commit_start_ptr = nilfs_bmap_commit_start_v, - .bpop_abort_start_ptr = nilfs_bmap_abort_start_v, .bpop_prepare_end_ptr = nilfs_bmap_prepare_end_v, .bpop_commit_end_ptr = nilfs_bmap_commit_end_vmdt, .bpop_abort_end_ptr = nilfs_bmap_abort_end_v, @@ -664,9 +650,6 @@ static const struct nilfs_bmap_ptr_operations nilfs_bmap_ptr_ops_p = { .bpop_prepare_alloc_ptr = nilfs_bmap_prepare_alloc_p, .bpop_commit_alloc_ptr = nilfs_bmap_commit_alloc_p, .bpop_abort_alloc_ptr = nilfs_bmap_abort_alloc_p, - .bpop_prepare_start_ptr = NULL, - .bpop_commit_start_ptr = NULL, - .bpop_abort_start_ptr = NULL, .bpop_prepare_end_ptr = NULL, .bpop_commit_end_ptr = NULL, .bpop_abort_end_ptr = NULL, @@ -678,9 +661,6 @@ static const struct nilfs_bmap_ptr_operations nilfs_bmap_ptr_ops_gc = { .bpop_prepare_alloc_ptr = NULL, .bpop_commit_alloc_ptr = NULL, .bpop_abort_alloc_ptr = NULL, - .bpop_prepare_start_ptr = NULL, - .bpop_commit_start_ptr = NULL, - .bpop_abort_start_ptr = NULL, .bpop_prepare_end_ptr = NULL, .bpop_commit_end_ptr = NULL, .bpop_abort_end_ptr = NULL, |