mirror of
https://github.com/kdave/btrfs-progs
synced 2025-05-04 17:07:55 +00:00
btrfs-progs: mkfs: clean up default profile settings
Extract the defaults for data and metadata profiles to a header and use the symbolic names instead of hardcoding the profiles. Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
ffd3b4cda2
commit
071cb030a4
@ -28,6 +28,16 @@
|
||||
#define BTRFS_MKFS_SYSTEM_GROUP_SIZE SZ_4M
|
||||
#define BTRFS_MKFS_SMALL_VOLUME_SIZE SZ_1G
|
||||
|
||||
/*
|
||||
* Default settings for block group types
|
||||
*/
|
||||
#define BTRFS_MKFS_DEFAULT_DATA_ONE_DEVICE 0 /* SINGLE */
|
||||
#define BTRFS_MKFS_DEFAULT_META_ONE_DEVICE BTRFS_BLOCK_GROUP_DUP
|
||||
#define BTRFS_MKFS_DEFAULT_META_ONE_DEVICE_SSD 0 /* SINGLE */
|
||||
|
||||
#define BTRFS_MKFS_DEFAULT_DATA_MULTI_DEVICE BTRFS_BLOCK_GROUP_RAID0
|
||||
#define BTRFS_MKFS_DEFAULT_META_MULTI_DEVICE BTRFS_BLOCK_GROUP_RAID1
|
||||
|
||||
/*
|
||||
* Tree root blocks created during mkfs
|
||||
*/
|
||||
|
21
mkfs/main.c
21
mkfs/main.c
@ -1144,19 +1144,30 @@ int BOX_MAIN(mkfs)(int argc, char **argv)
|
||||
* For mixed groups defaults are single/single.
|
||||
*/
|
||||
if (!mixed) {
|
||||
u64 tmp;
|
||||
|
||||
if (!metadata_profile_opt) {
|
||||
if (dev_cnt == 1 && ssd && verbose)
|
||||
printf("Detected a SSD, turning off metadata "
|
||||
"duplication. Mkfs with -m dup if you want to "
|
||||
"force metadata duplication.\n");
|
||||
|
||||
metadata_profile = (dev_cnt > 1) ?
|
||||
BTRFS_BLOCK_GROUP_RAID1 : (ssd) ?
|
||||
0: BTRFS_BLOCK_GROUP_DUP;
|
||||
if (dev_cnt > 1) {
|
||||
tmp = BTRFS_MKFS_DEFAULT_META_MULTI_DEVICE;
|
||||
} else {
|
||||
if (ssd)
|
||||
tmp = BTRFS_MKFS_DEFAULT_META_ONE_DEVICE_SSD;
|
||||
else
|
||||
tmp = BTRFS_MKFS_DEFAULT_META_ONE_DEVICE;
|
||||
}
|
||||
metadata_profile = tmp;
|
||||
}
|
||||
if (!data_profile_opt) {
|
||||
data_profile = (dev_cnt > 1) ?
|
||||
BTRFS_BLOCK_GROUP_RAID0 : 0; /* raid0 or single */
|
||||
if (dev_cnt > 1)
|
||||
tmp = BTRFS_MKFS_DEFAULT_DATA_MULTI_DEVICE;
|
||||
else
|
||||
tmp = BTRFS_MKFS_DEFAULT_DATA_ONE_DEVICE;
|
||||
data_profile = tmp;
|
||||
}
|
||||
} else {
|
||||
u32 best_nodesize = max_t(u32, sysconf(_SC_PAGESIZE), sectorsize);
|
||||
|
Loading…
Reference in New Issue
Block a user