Add a min size parameter to btrfs_alloc_extent
On huge machines, delayed allocation may try to allocate massive extents. This change allows btrfs_alloc_extent to return something smaller than the caller asked for, and the data allocation routines will loop over the allocations until it fills the whole delayed alloc. Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
@@ -1286,7 +1286,8 @@ int btrfs_insert_extent_backref(struct btrfs_trans_handle *trans,
|
||||
u64 owner, u64 owner_offset);
|
||||
int btrfs_alloc_extent(struct btrfs_trans_handle *trans,
|
||||
struct btrfs_root *root,
|
||||
u64 num_bytes, u64 root_objectid, u64 ref_generation,
|
||||
u64 num_bytes, u64 min_bytes,
|
||||
u64 root_objectid, u64 ref_generation,
|
||||
u64 owner, u64 owner_offset,
|
||||
u64 empty_size, u64 hint_byte,
|
||||
u64 search_end, struct btrfs_key *ins, int data);
|
||||
|
Reference in New Issue
Block a user