aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/inode.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index ecd9c4cdb0db..13ab4de0a400 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -8502,6 +8502,7 @@ static int __btrfs_prealloc_file_range(struct inode *inode, int mode,
8502 struct btrfs_key ins; 8502 struct btrfs_key ins;
8503 u64 cur_offset = start; 8503 u64 cur_offset = start;
8504 u64 i_size; 8504 u64 i_size;
8505 u64 cur_bytes;
8505 int ret = 0; 8506 int ret = 0;
8506 bool own_trans = true; 8507 bool own_trans = true;
8507 8508
@@ -8516,8 +8517,9 @@ static int __btrfs_prealloc_file_range(struct inode *inode, int mode,
8516 } 8517 }
8517 } 8518 }
8518 8519
8519 ret = btrfs_reserve_extent(trans, root, 8520 cur_bytes = min(num_bytes, 256ULL * 1024 * 1024);
8520 min(num_bytes, 256ULL * 1024 * 1024), 8521 cur_bytes = max(cur_bytes, min_size);
8522 ret = btrfs_reserve_extent(trans, root, cur_bytes,
8521 min_size, 0, *alloc_hint, &ins, 1); 8523 min_size, 0, *alloc_hint, &ins, 1);
8522 if (ret) { 8524 if (ret) {
8523 if (own_trans) 8525 if (own_trans)