diff options
author | Josef Bacik <josef@redhat.com> | 2011-10-11 14:18:24 -0400 |
---|---|---|
committer | Josef Bacik <josef@redhat.com> | 2011-10-19 15:12:55 -0400 |
commit | e70bea5fe0e3d6355fd95674eaff5aa5a32f0564 (patch) | |
tree | dad7af7a0d449c43393c9249d4634a8279580534 /fs | |
parent | 4b91c14f913f649d4302b3677b85c4ce87a3d8e7 (diff) |
Btrfs: fix the amount of space reserved for unlink
Our unlink reservations were a bit much, we were reserving 10 and I only count 8
possible items we're touching, so comment what we're reserving for and fix the
count value. Thanks,
Signed-off-by: Josef Bacik <josef@redhat.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/btrfs/inode.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 246397d8478f..1f013c5c36aa 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c | |||
@@ -2758,7 +2758,16 @@ static struct btrfs_trans_handle *__unlink_start_trans(struct inode *dir, | |||
2758 | u64 ino = btrfs_ino(inode); | 2758 | u64 ino = btrfs_ino(inode); |
2759 | u64 dir_ino = btrfs_ino(dir); | 2759 | u64 dir_ino = btrfs_ino(dir); |
2760 | 2760 | ||
2761 | trans = btrfs_start_transaction(root, 10); | 2761 | /* |
2762 | * 1 for the possible orphan item | ||
2763 | * 1 for the dir item | ||
2764 | * 1 for the dir index | ||
2765 | * 1 for the inode ref | ||
2766 | * 1 for the inode ref in the tree log | ||
2767 | * 2 for the dir entries in the log | ||
2768 | * 1 for the inode | ||
2769 | */ | ||
2770 | trans = btrfs_start_transaction(root, 8); | ||
2762 | if (!IS_ERR(trans) || PTR_ERR(trans) != -ENOSPC) | 2771 | if (!IS_ERR(trans) || PTR_ERR(trans) != -ENOSPC) |
2763 | return trans; | 2772 | return trans; |
2764 | 2773 | ||