aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/inode.c
diff options
context:
space:
mode:
authorJosef Bacik <josef@redhat.com>2011-10-18 12:15:48 -0400
committerJosef Bacik <josef@redhat.com>2011-10-19 15:12:59 -0400
commit36ba022ac0b748dd543f43430b03198e899426c9 (patch)
tree3175872760ac769cde046b3ac43900fc42856bb8 /fs/btrfs/inode.c
parent3880a1b46d87a6b030c31889875befc745d95dff (diff)
Btrfs: seperate out btrfs_block_rsv_check out into 2 different functions
Currently btrfs_block_rsv_check does 2 things, it will either refill a block reserve like in the truncate or refill case, or it will check to see if there is enough space in the global reserve and possibly refill it. However because of overcommit we could be well overcommitting ourselves just to try and refill the global reserve, when really we should just be committing the transaction. So breack this out into btrfs_block_rsv_refill and btrfs_block_rsv_check. Refill will try to reserve more metadata if it can and btrfs_block_rsv_check will not, it will only tell you if the factor of the total space is still reserved. Thanks, Signed-off-by: Josef Bacik <josef@redhat.com>
Diffstat (limited to 'fs/btrfs/inode.c')
-rw-r--r--fs/btrfs/inode.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index b6b70bdd0992..f12747c9447b 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -3604,7 +3604,7 @@ void btrfs_evict_inode(struct inode *inode)
3604 * doing the truncate. 3604 * doing the truncate.
3605 */ 3605 */
3606 while (1) { 3606 while (1) {
3607 ret = btrfs_block_rsv_check(root, rsv, min_size, 0, 1); 3607 ret = btrfs_block_rsv_refill(root, rsv, min_size);
3608 3608
3609 /* 3609 /*
3610 * Try and steal from the global reserve since we will 3610 * Try and steal from the global reserve since we will
@@ -6613,7 +6613,7 @@ static int btrfs_truncate(struct inode *inode)
6613 btrfs_add_ordered_operation(trans, root, inode); 6613 btrfs_add_ordered_operation(trans, root, inode);
6614 6614
6615 while (1) { 6615 while (1) {
6616 ret = btrfs_block_rsv_check(root, rsv, min_size, 0, 1); 6616 ret = btrfs_block_rsv_refill(root, rsv, min_size);
6617 if (ret) { 6617 if (ret) {
6618 /* 6618 /*
6619 * This can only happen with the original transaction we 6619 * This can only happen with the original transaction we