btrfs: advertise which crc32c implementation is being used at module 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>
This commit is contained in:
parent
e06cd3dd7c
commit
5f9e1059d9
3 changed files with 9 additions and 2 deletions
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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
|
||||
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue