Skip to content

Commit

Permalink
btrfs: advertise which crc32c implementation is being used at module …
Browse files Browse the repository at this point in the history
…load

Since several architectures support hardware-accelerated crc32c
calculation, it would be nice to confirm that btrfs is actually using it.

We can see an elevated use count for the module, but it doesn't actually
show who the users are.  This patch simply prints the name of the driver
after successfully initializing the shash.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
[ added a helper and used in module load-time message ]
Signed-off-by: David Sterba <dsterba@suse.com>
  • Loading branch information
Jeff Mahoney authored and David Sterba committed Jun 6, 2016
1 parent e06cd3d commit 5f9e105
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 2 deletions.
5 changes: 5 additions & 0 deletions fs/btrfs/hash.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ int __init btrfs_hash_init(void)
return PTR_ERR_OR_ZERO(tfm);
}

const char* btrfs_crc32c_impl(void)
{
return crypto_tfm_alg_driver_name(crypto_shash_tfm(tfm));
}

void btrfs_hash_exit(void)
{
crypto_free_shash(tfm);
Expand Down
1 change: 1 addition & 0 deletions fs/btrfs/hash.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
int __init btrfs_hash_init(void);

void btrfs_hash_exit(void);
const char* btrfs_crc32c_impl(void);

u32 btrfs_crc32c(u32 crc, const void *address, unsigned int length);

Expand Down
5 changes: 3 additions & 2 deletions fs/btrfs/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -2303,7 +2303,7 @@ static void btrfs_interface_exit(void)

static void btrfs_print_mod_info(void)
{
printk(KERN_INFO "Btrfs loaded"
printk(KERN_INFO "Btrfs loaded, crc32c=%s"
#ifdef CONFIG_BTRFS_DEBUG
", debug=on"
#endif
Expand All @@ -2313,7 +2313,8 @@ static void btrfs_print_mod_info(void)
#ifdef CONFIG_BTRFS_FS_CHECK_INTEGRITY
", integrity-checker=on"
#endif
"\n");
"\n",
btrfs_crc32c_impl());
}

static int btrfs_run_sanity_tests(void)
Expand Down

0 comments on commit 5f9e105

Please sign in to comment.