mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 14:41:27 +00:00
Btrfs: Allocator fix variety pack
* Force chunk allocation when find_free_extent has to do a full scan * Record the max key at the start of defrag so it doesn't run forever * Block groups might not be contiguous, make a forward search for the next block group in extent-tree.c * Get rid of extra checks for total fs size * Fix relocate_one_reference to avoid relocating the same file data block twice when referenced by an older transaction * Use the open device count when allocating chunks so that we don't try to allocate from devices that don't exist Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
parent
515dc3228c
commit
0ef3e66b67
5 changed files with 213 additions and 101 deletions
|
@ -464,6 +464,7 @@ struct btrfs_space_info {
|
|||
u64 bytes_used;
|
||||
u64 bytes_pinned;
|
||||
int full;
|
||||
int force_alloc;
|
||||
struct list_head list;
|
||||
};
|
||||
|
||||
|
@ -589,6 +590,7 @@ struct btrfs_root {
|
|||
int ref_cows;
|
||||
int track_dirty;
|
||||
struct btrfs_key defrag_progress;
|
||||
struct btrfs_key defrag_max;
|
||||
int defrag_running;
|
||||
int defrag_level;
|
||||
char *name;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue