btrfs: inline checksum name and driver definitions
There's an unnecessary indirection in the checksum definition table, pointer and the string itself. The strings are short and the overall size of one entry is now 24 bytes. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
11c67b1a40
commit
59a0fcdb48
|
@ -31,8 +31,8 @@ static void del_ptr(struct btrfs_root *root, struct btrfs_path *path,
|
||||||
|
|
||||||
static const struct btrfs_csums {
|
static const struct btrfs_csums {
|
||||||
u16 size;
|
u16 size;
|
||||||
const char *name;
|
const char name[10];
|
||||||
const char *driver;
|
const char driver[12];
|
||||||
} btrfs_csums[] = {
|
} btrfs_csums[] = {
|
||||||
[BTRFS_CSUM_TYPE_CRC32] = { .size = 4, .name = "crc32c" },
|
[BTRFS_CSUM_TYPE_CRC32] = { .size = 4, .name = "crc32c" },
|
||||||
[BTRFS_CSUM_TYPE_XXHASH] = { .size = 8, .name = "xxhash64" },
|
[BTRFS_CSUM_TYPE_XXHASH] = { .size = 8, .name = "xxhash64" },
|
||||||
|
@ -63,7 +63,8 @@ const char *btrfs_super_csum_name(u16 csum_type)
|
||||||
const char *btrfs_super_csum_driver(u16 csum_type)
|
const char *btrfs_super_csum_driver(u16 csum_type)
|
||||||
{
|
{
|
||||||
/* csum type is validated at mount time */
|
/* csum type is validated at mount time */
|
||||||
return btrfs_csums[csum_type].driver ?:
|
return btrfs_csums[csum_type].driver[0] ?
|
||||||
|
btrfs_csums[csum_type].driver :
|
||||||
btrfs_csums[csum_type].name;
|
btrfs_csums[csum_type].name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue