mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-10 15:58:47 +00:00
btrfs: use u8 for raid_array members
The raid_attr table is now 7 * 56 = 392 bytes long, consisting of just small numbers so we don't have to use ints. New size is 7 * 32 = 224, saving 3 cachelines. Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
946c9256c6
commit
8c3e3582a4
@ -3704,7 +3704,7 @@ int btrfs_get_num_tolerated_disk_barrier_failures(u64 flags)
|
|||||||
|
|
||||||
if ((flags & BTRFS_BLOCK_GROUP_PROFILE_MASK) == 0 ||
|
if ((flags & BTRFS_BLOCK_GROUP_PROFILE_MASK) == 0 ||
|
||||||
(flags & BTRFS_AVAIL_ALLOC_BIT_SINGLE))
|
(flags & BTRFS_AVAIL_ALLOC_BIT_SINGLE))
|
||||||
min_tolerated = min(min_tolerated,
|
min_tolerated = min_t(int, min_tolerated,
|
||||||
btrfs_raid_array[BTRFS_RAID_SINGLE].
|
btrfs_raid_array[BTRFS_RAID_SINGLE].
|
||||||
tolerated_failures);
|
tolerated_failures);
|
||||||
|
|
||||||
@ -3713,7 +3713,7 @@ int btrfs_get_num_tolerated_disk_barrier_failures(u64 flags)
|
|||||||
continue;
|
continue;
|
||||||
if (!(flags & btrfs_raid_array[raid_type].bg_flag))
|
if (!(flags & btrfs_raid_array[raid_type].bg_flag))
|
||||||
continue;
|
continue;
|
||||||
min_tolerated = min(min_tolerated,
|
min_tolerated = min_t(int, min_tolerated,
|
||||||
btrfs_raid_array[raid_type].
|
btrfs_raid_array[raid_type].
|
||||||
tolerated_failures);
|
tolerated_failures);
|
||||||
}
|
}
|
||||||
|
@ -336,16 +336,16 @@ struct btrfs_device_info {
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct btrfs_raid_attr {
|
struct btrfs_raid_attr {
|
||||||
int sub_stripes; /* sub_stripes info for map */
|
u8 sub_stripes; /* sub_stripes info for map */
|
||||||
int dev_stripes; /* stripes per dev */
|
u8 dev_stripes; /* stripes per dev */
|
||||||
int devs_max; /* max devs to use */
|
u8 devs_max; /* max devs to use */
|
||||||
int devs_min; /* min devs needed */
|
u8 devs_min; /* min devs needed */
|
||||||
int tolerated_failures; /* max tolerated fail devs */
|
u8 tolerated_failures; /* max tolerated fail devs */
|
||||||
int devs_increment; /* ndevs has to be a multiple of this */
|
u8 devs_increment; /* ndevs has to be a multiple of this */
|
||||||
int ncopies; /* how many copies to data has */
|
u8 ncopies; /* how many copies to data has */
|
||||||
int nparity; /* number of stripes worth of bytes to store
|
u8 nparity; /* number of stripes worth of bytes to store
|
||||||
* parity information */
|
* parity information */
|
||||||
int mindev_error; /* error code if min devs requisite is unmet */
|
u8 mindev_error; /* error code if min devs requisite is unmet */
|
||||||
const char raid_name[8]; /* name of the raid */
|
const char raid_name[8]; /* name of the raid */
|
||||||
u64 bg_flag; /* block group flag of the raid */
|
u64 bg_flag; /* block group flag of the raid */
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user