Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit df91f56a authored by Nikolay Borisov's avatar Nikolay Borisov Committed by David Sterba
Browse files

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: default avatarNikolay Borisov <nborisov@suse.com>
Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
[ use crypto_shash_driver_name as suggested by Herbert ]
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 3e72ee88
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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
+6 −0
Original line number Diff line number Diff line
@@ -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);