aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/bmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/gfs2/bmap.c')
-rw-r--r--fs/gfs2/bmap.c39
1 files changed, 13 insertions, 26 deletions
diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
index b75a2f93dada..bb597839c0c9 100644
--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -170,12 +170,10 @@ int gfs2_unstuff_dinode(struct gfs2_inode *ip, struct page *page)
170 170
171 gfs2_dinode_out(&ip->i_di, dibh->b_data); 171 gfs2_dinode_out(&ip->i_di, dibh->b_data);
172 172
173 out_brelse: 173out_brelse:
174 brelse(dibh); 174 brelse(dibh);
175 175out:
176 out:
177 up_write(&ip->i_rw_mutex); 176 up_write(&ip->i_rw_mutex);
178
179 return error; 177 return error;
180} 178}
181 179
@@ -642,9 +640,8 @@ static int recursive_scan(struct gfs2_inode *ip, struct buffer_head *dibh,
642 break; 640 break;
643 } 641 }
644 642
645 out: 643out:
646 brelse(bh); 644 brelse(bh);
647
648 return error; 645 return error;
649} 646}
650 647
@@ -788,15 +785,12 @@ static int do_strip(struct gfs2_inode *ip, struct buffer_head *dibh,
788 785
789 gfs2_trans_end(sdp); 786 gfs2_trans_end(sdp);
790 787
791 out_rg_gunlock: 788out_rg_gunlock:
792 gfs2_glock_dq_m(rlist.rl_rgrps, rlist.rl_ghs); 789 gfs2_glock_dq_m(rlist.rl_rgrps, rlist.rl_ghs);
793 790out_rlist:
794 out_rlist:
795 gfs2_rlist_free(&rlist); 791 gfs2_rlist_free(&rlist);
796 792out:
797 out:
798 gfs2_glock_dq_uninit(&ip->i_alloc.al_ri_gh); 793 gfs2_glock_dq_uninit(&ip->i_alloc.al_ri_gh);
799
800 return error; 794 return error;
801} 795}
802 796
@@ -868,18 +862,14 @@ static int do_grow(struct gfs2_inode *ip, uint64_t size)
868 gfs2_dinode_out(&ip->i_di, dibh->b_data); 862 gfs2_dinode_out(&ip->i_di, dibh->b_data);
869 brelse(dibh); 863 brelse(dibh);
870 864
871 out_end_trans: 865out_end_trans:
872 gfs2_trans_end(sdp); 866 gfs2_trans_end(sdp);
873 867out_ipres:
874 out_ipres:
875 gfs2_inplace_release(ip); 868 gfs2_inplace_release(ip);
876 869out_gunlock_q:
877 out_gunlock_q:
878 gfs2_quota_unlock(ip); 870 gfs2_quota_unlock(ip);
879 871out:
880 out:
881 gfs2_alloc_put(ip); 872 gfs2_alloc_put(ip);
882
883 return error; 873 return error;
884} 874}
885 875
@@ -998,9 +988,8 @@ static int trunc_start(struct gfs2_inode *ip, uint64_t size)
998 988
999 brelse(dibh); 989 brelse(dibh);
1000 990
1001 out: 991out:
1002 gfs2_trans_end(sdp); 992 gfs2_trans_end(sdp);
1003
1004 return error; 993 return error;
1005} 994}
1006 995
@@ -1035,7 +1024,7 @@ static int trunc_dealloc(struct gfs2_inode *ip, uint64_t size)
1035 1024
1036 gfs2_quota_unhold(ip); 1025 gfs2_quota_unhold(ip);
1037 1026
1038 out: 1027out:
1039 gfs2_alloc_put(ip); 1028 gfs2_alloc_put(ip);
1040 return error; 1029 return error;
1041} 1030}
@@ -1070,11 +1059,9 @@ static int trunc_end(struct gfs2_inode *ip)
1070 gfs2_dinode_out(&ip->i_di, dibh->b_data); 1059 gfs2_dinode_out(&ip->i_di, dibh->b_data);
1071 brelse(dibh); 1060 brelse(dibh);
1072 1061
1073 out: 1062out:
1074 up_write(&ip->i_rw_mutex); 1063 up_write(&ip->i_rw_mutex);
1075
1076 gfs2_trans_end(sdp); 1064 gfs2_trans_end(sdp);
1077
1078 return error; 1065 return error;
1079} 1066}
1080 1067