aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/eattr.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/gfs2/eattr.c')
-rw-r--r--fs/gfs2/eattr.c62
1 files changed, 21 insertions, 41 deletions
diff --git a/fs/gfs2/eattr.c b/fs/gfs2/eattr.c
index 9081822ce80c..5a56e6568622 100644
--- a/fs/gfs2/eattr.c
+++ b/fs/gfs2/eattr.c
@@ -107,7 +107,7 @@ static int ea_foreach_i(struct gfs2_inode *ip, struct buffer_head *bh,
107 107
108 return error; 108 return error;
109 109
110 fail: 110fail:
111 gfs2_consist_inode(ip); 111 gfs2_consist_inode(ip);
112 return -EIO; 112 return -EIO;
113} 113}
@@ -152,9 +152,8 @@ static int ea_foreach(struct gfs2_inode *ip, ea_call_t ea_call, void *data)
152 if (error) 152 if (error)
153 break; 153 break;
154 } 154 }
155 out: 155out:
156 brelse(bh); 156 brelse(bh);
157
158 return error; 157 return error;
159} 158}
160 159
@@ -319,9 +318,8 @@ static int ea_dealloc_unstuffed(struct gfs2_inode *ip, struct buffer_head *bh,
319 318
320 gfs2_trans_end(sdp); 319 gfs2_trans_end(sdp);
321 320
322 out_gunlock: 321out_gunlock:
323 gfs2_glock_dq_uninit(&rg_gh); 322 gfs2_glock_dq_uninit(&rg_gh);
324
325 return error; 323 return error;
326} 324}
327 325
@@ -348,12 +346,10 @@ static int ea_remove_unstuffed(struct gfs2_inode *ip, struct buffer_head *bh,
348 346
349 gfs2_glock_dq_uninit(&al->al_ri_gh); 347 gfs2_glock_dq_uninit(&al->al_ri_gh);
350 348
351 out_quota: 349out_quota:
352 gfs2_quota_unhold(ip); 350 gfs2_quota_unhold(ip);
353 351out_alloc:
354 out_alloc:
355 gfs2_alloc_put(ip); 352 gfs2_alloc_put(ip);
356
357 return error; 353 return error;
358} 354}
359 355
@@ -506,9 +502,8 @@ static int ea_get_unstuffed(struct gfs2_inode *ip, struct gfs2_ea_header *ea,
506 brelse(bh[x]); 502 brelse(bh[x]);
507 } 503 }
508 504
509 out: 505out:
510 kfree(bh); 506 kfree(bh);
511
512 return error; 507 return error;
513} 508}
514 509
@@ -747,18 +742,14 @@ static int ea_alloc_skeleton(struct gfs2_inode *ip, struct gfs2_ea_request *er,
747 brelse(dibh); 742 brelse(dibh);
748 } 743 }
749 744
750 out_end_trans: 745out_end_trans:
751 gfs2_trans_end(GFS2_SB(&ip->i_inode)); 746 gfs2_trans_end(GFS2_SB(&ip->i_inode));
752 747out_ipres:
753 out_ipres:
754 gfs2_inplace_release(ip); 748 gfs2_inplace_release(ip);
755 749out_gunlock_q:
756 out_gunlock_q:
757 gfs2_quota_unlock(ip); 750 gfs2_quota_unlock(ip);
758 751out:
759 out:
760 gfs2_alloc_put(ip); 752 gfs2_alloc_put(ip);
761
762 return error; 753 return error;
763} 754}
764 755
@@ -884,9 +875,8 @@ static int ea_set_simple_noalloc(struct gfs2_inode *ip, struct buffer_head *bh,
884 gfs2_trans_add_bh(ip->i_gl, dibh, 1); 875 gfs2_trans_add_bh(ip->i_gl, dibh, 1);
885 gfs2_dinode_out(&ip->i_di, dibh->b_data); 876 gfs2_dinode_out(&ip->i_di, dibh->b_data);
886 brelse(dibh); 877 brelse(dibh);
887 out: 878out:
888 gfs2_trans_end(GFS2_SB(&ip->i_inode)); 879 gfs2_trans_end(GFS2_SB(&ip->i_inode));
889
890 return error; 880 return error;
891} 881}
892 882
@@ -1025,9 +1015,8 @@ static int ea_set_block(struct gfs2_inode *ip, struct gfs2_ea_request *er,
1025 if (private) 1015 if (private)
1026 ea_set_remove_stuffed(ip, (struct gfs2_ea_location *)private); 1016 ea_set_remove_stuffed(ip, (struct gfs2_ea_location *)private);
1027 1017
1028 out: 1018out:
1029 brelse(indbh); 1019 brelse(indbh);
1030
1031 return error; 1020 return error;
1032} 1021}
1033 1022
@@ -1285,15 +1274,13 @@ static int ea_acl_chmod_unstuffed(struct gfs2_inode *ip,
1285 brelse(bh[x]); 1274 brelse(bh[x]);
1286 } 1275 }
1287 1276
1288 out: 1277out:
1289 kfree(bh); 1278 kfree(bh);
1290
1291 return error; 1279 return error;
1292 1280
1293 fail: 1281fail:
1294 gfs2_trans_end(sdp); 1282 gfs2_trans_end(sdp);
1295 kfree(bh); 1283 kfree(bh);
1296
1297 return error; 1284 return error;
1298} 1285}
1299 1286
@@ -1442,15 +1429,12 @@ static int ea_dealloc_indirect(struct gfs2_inode *ip)
1442 1429
1443 gfs2_trans_end(sdp); 1430 gfs2_trans_end(sdp);
1444 1431
1445 out_gunlock: 1432out_gunlock:
1446 gfs2_glock_dq_m(rlist.rl_rgrps, rlist.rl_ghs); 1433 gfs2_glock_dq_m(rlist.rl_rgrps, rlist.rl_ghs);
1447 1434out_rlist_free:
1448 out_rlist_free:
1449 gfs2_rlist_free(&rlist); 1435 gfs2_rlist_free(&rlist);
1450 1436out:
1451 out:
1452 brelse(indbh); 1437 brelse(indbh);
1453
1454 return error; 1438 return error;
1455} 1439}
1456 1440
@@ -1494,9 +1478,8 @@ static int ea_dealloc_block(struct gfs2_inode *ip)
1494 1478
1495 gfs2_trans_end(sdp); 1479 gfs2_trans_end(sdp);
1496 1480
1497 out_gunlock: 1481out_gunlock:
1498 gfs2_glock_dq_uninit(&al->al_rgd_gh); 1482 gfs2_glock_dq_uninit(&al->al_rgd_gh);
1499
1500 return error; 1483 return error;
1501} 1484}
1502 1485
@@ -1534,15 +1517,12 @@ int gfs2_ea_dealloc(struct gfs2_inode *ip)
1534 1517
1535 error = ea_dealloc_block(ip); 1518 error = ea_dealloc_block(ip);
1536 1519
1537 out_rindex: 1520out_rindex:
1538 gfs2_glock_dq_uninit(&al->al_ri_gh); 1521 gfs2_glock_dq_uninit(&al->al_ri_gh);
1539 1522out_quota:
1540 out_quota:
1541 gfs2_quota_unhold(ip); 1523 gfs2_quota_unhold(ip);
1542 1524out_alloc:
1543 out_alloc:
1544 gfs2_alloc_put(ip); 1525 gfs2_alloc_put(ip);
1545
1546 return error; 1526 return error;
1547} 1527}
1548 1528