libcrc32c: Add crc32c_impl function
This function returns a string with the currently in-use implementation of the crc32c algorithm, i.e crc32c-generic (for unoptimised, generic implementation) or crc32c-intel for the sse optimised version. This will be used by btrfs. Signed-off-by: Nikolay Borisov <nborisov@suse.com> Acked-by: Herbert Xu <herbert@gondor.apana.org.au> [ use crypto_shash_driver_name as suggested by Herbert ] Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
3e72ee8874
commit
df91f56adc
|
@ -5,6 +5,7 @@
|
|||
#include <linux/types.h>
|
||||
|
||||
extern u32 crc32c(u32 crc, const void *address, unsigned int length);
|
||||
extern const char *crc32c_impl(void);
|
||||
|
||||
/* This macro exists for backwards-compatibility. */
|
||||
#define crc32c_le crc32c
|
||||
|
|
|
@ -71,6 +71,12 @@ static void __exit libcrc32c_mod_fini(void)
|
|||
crypto_free_shash(tfm);
|
||||
}
|
||||
|
||||
const char *crc32c_impl(void)
|
||||
{
|
||||
return crypto_shash_driver_name(tfm);
|
||||
}
|
||||
EXPORT_SYMBOL(crc32c_impl);
|
||||
|
||||
module_init(libcrc32c_mod_init);
|
||||
module_exit(libcrc32c_mod_fini);
|
||||
|
||||
|
|
Loading…
Reference in New Issue