nit: I'd name this commit "Add xxhash64 to supported checksum hashes"
Personally, I interpret 'use <some hash> for checksumming' as if you are modifying code to use that hash. But in fact you are not, at least not in that patch. On 26.08.19 г. 14:48 ч., Johannes Thumshirn wrote: > Signed-off-by: Johannes Thumshirn <jthumsh...@suse.de> > --- > fs/btrfs/Kconfig | 1 + > fs/btrfs/ctree.h | 1 + > fs/btrfs/disk-io.c | 1 + > fs/btrfs/super.c | 1 + > include/uapi/linux/btrfs_tree.h | 1 + > 5 files changed, 5 insertions(+) > > diff --git a/fs/btrfs/Kconfig b/fs/btrfs/Kconfig > index 38651fae7f21..6d5a01c57da3 100644 > --- a/fs/btrfs/Kconfig > +++ b/fs/btrfs/Kconfig > @@ -5,6 +5,7 @@ config BTRFS_FS > select CRYPTO > select CRYPTO_CRC32C > select LIBCRC32C > + select CRYPTO_XXHASH > select ZLIB_INFLATE > select ZLIB_DEFLATE > select LZO_COMPRESS > diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h > index 139354d02dfa..c62729d5aa6e 100644 > --- a/fs/btrfs/ctree.h > +++ b/fs/btrfs/ctree.h > @@ -87,6 +87,7 @@ static const struct btrfs_csums { > const char *name; > } btrfs_csums[] = { > [BTRFS_CSUM_TYPE_CRC32] = { .size = 4, .name = "crc32c" }, > + [BTRFS_CSUM_TYPE_XXHASH] = { .size = 8, .name = "xxhash64" }, > }; > > #define BTRFS_EMPTY_DIR_SIZE 0 > diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c > index 99dfd889b9f7..ac039a4d23ff 100644 > --- a/fs/btrfs/disk-io.c > +++ b/fs/btrfs/disk-io.c > @@ -352,6 +352,7 @@ static bool btrfs_supported_super_csum(u16 csum_type) > { > switch (csum_type) { > case BTRFS_CSUM_TYPE_CRC32: > + case BTRFS_CSUM_TYPE_XXHASH: > return true; > default: > return false; > diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c > index 1b151af25772..60116d0410e5 100644 > --- a/fs/btrfs/super.c > +++ b/fs/btrfs/super.c > @@ -2456,3 +2456,4 @@ module_exit(exit_btrfs_fs) > > MODULE_LICENSE("GPL"); > MODULE_SOFTDEP("pre: crc32c"); > +MODULE_SOFTDEP("pre: xxhash64"); > diff --git a/include/uapi/linux/btrfs_tree.h b/include/uapi/linux/btrfs_tree.h > index b65c7ee75bc7..ba2f125a3a1c 100644 > --- a/include/uapi/linux/btrfs_tree.h > +++ b/include/uapi/linux/btrfs_tree.h > @@ -302,6 +302,7 @@ > /* csum types */ > enum btrfs_csum_type { > BTRFS_CSUM_TYPE_CRC32 = 0, > + BTRFS_CSUM_TYPE_XXHASH = 1, > }; > > /* >