diff options
Diffstat (limited to 'fs/gfs2/xattr.c')
-rw-r--r-- | fs/gfs2/xattr.c | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/fs/gfs2/xattr.c b/fs/gfs2/xattr.c index 927f4df874ae..523c0de0d805 100644 --- a/fs/gfs2/xattr.c +++ b/fs/gfs2/xattr.c | |||
@@ -325,13 +325,8 @@ static int ea_remove_unstuffed(struct gfs2_inode *ip, struct buffer_head *bh, | |||
325 | struct gfs2_ea_header *ea, | 325 | struct gfs2_ea_header *ea, |
326 | struct gfs2_ea_header *prev, int leave) | 326 | struct gfs2_ea_header *prev, int leave) |
327 | { | 327 | { |
328 | struct gfs2_qadata *qa; | ||
329 | int error; | 328 | int error; |
330 | 329 | ||
331 | qa = gfs2_qadata_get(ip); | ||
332 | if (!qa) | ||
333 | return -ENOMEM; | ||
334 | |||
335 | error = gfs2_quota_hold(ip, NO_QUOTA_CHANGE, NO_QUOTA_CHANGE); | 330 | error = gfs2_quota_hold(ip, NO_QUOTA_CHANGE, NO_QUOTA_CHANGE); |
336 | if (error) | 331 | if (error) |
337 | goto out_alloc; | 332 | goto out_alloc; |
@@ -340,7 +335,6 @@ static int ea_remove_unstuffed(struct gfs2_inode *ip, struct buffer_head *bh, | |||
340 | 335 | ||
341 | gfs2_quota_unhold(ip); | 336 | gfs2_quota_unhold(ip); |
342 | out_alloc: | 337 | out_alloc: |
343 | gfs2_qadata_put(ip); | ||
344 | return error; | 338 | return error; |
345 | } | 339 | } |
346 | 340 | ||
@@ -713,17 +707,12 @@ static int ea_alloc_skeleton(struct gfs2_inode *ip, struct gfs2_ea_request *er, | |||
713 | unsigned int blks, | 707 | unsigned int blks, |
714 | ea_skeleton_call_t skeleton_call, void *private) | 708 | ea_skeleton_call_t skeleton_call, void *private) |
715 | { | 709 | { |
716 | struct gfs2_qadata *qa; | ||
717 | struct buffer_head *dibh; | 710 | struct buffer_head *dibh; |
718 | int error; | 711 | int error; |
719 | 712 | ||
720 | qa = gfs2_qadata_get(ip); | ||
721 | if (!qa) | ||
722 | return -ENOMEM; | ||
723 | |||
724 | error = gfs2_quota_lock_check(ip); | 713 | error = gfs2_quota_lock_check(ip); |
725 | if (error) | 714 | if (error) |
726 | goto out; | 715 | return error; |
727 | 716 | ||
728 | error = gfs2_inplace_reserve(ip, blks); | 717 | error = gfs2_inplace_reserve(ip, blks); |
729 | if (error) | 718 | if (error) |
@@ -753,8 +742,6 @@ out_ipres: | |||
753 | gfs2_inplace_release(ip); | 742 | gfs2_inplace_release(ip); |
754 | out_gunlock_q: | 743 | out_gunlock_q: |
755 | gfs2_quota_unlock(ip); | 744 | gfs2_quota_unlock(ip); |
756 | out: | ||
757 | gfs2_qadata_put(ip); | ||
758 | return error; | 745 | return error; |
759 | } | 746 | } |
760 | 747 | ||
@@ -1494,16 +1481,11 @@ out_gunlock: | |||
1494 | 1481 | ||
1495 | int gfs2_ea_dealloc(struct gfs2_inode *ip) | 1482 | int gfs2_ea_dealloc(struct gfs2_inode *ip) |
1496 | { | 1483 | { |
1497 | struct gfs2_qadata *qa; | ||
1498 | int error; | 1484 | int error; |
1499 | 1485 | ||
1500 | qa = gfs2_qadata_get(ip); | ||
1501 | if (!qa) | ||
1502 | return -ENOMEM; | ||
1503 | |||
1504 | error = gfs2_quota_hold(ip, NO_QUOTA_CHANGE, NO_QUOTA_CHANGE); | 1486 | error = gfs2_quota_hold(ip, NO_QUOTA_CHANGE, NO_QUOTA_CHANGE); |
1505 | if (error) | 1487 | if (error) |
1506 | goto out_alloc; | 1488 | return error; |
1507 | 1489 | ||
1508 | error = ea_foreach(ip, ea_dealloc_unstuffed, NULL); | 1490 | error = ea_foreach(ip, ea_dealloc_unstuffed, NULL); |
1509 | if (error) | 1491 | if (error) |
@@ -1519,8 +1501,6 @@ int gfs2_ea_dealloc(struct gfs2_inode *ip) | |||
1519 | 1501 | ||
1520 | out_quota: | 1502 | out_quota: |
1521 | gfs2_quota_unhold(ip); | 1503 | gfs2_quota_unhold(ip); |
1522 | out_alloc: | ||
1523 | gfs2_qadata_put(ip); | ||
1524 | return error; | 1504 | return error; |
1525 | } | 1505 | } |
1526 | 1506 | ||