summaryrefslogtreecommitdiffstats
path: root/crypto/testmgr.c
diff options
context:
space:
mode:
authorKeith Busch <kbusch@kernel.org>2022-03-03 12:13:10 -0800
committerJens Axboe <axboe@kernel.dk>2022-03-07 12:48:35 -0700
commitf3813f4b287e480b1fcd62ca798d8556644b8278 (patch)
tree9f77b5e0c719e20bb7c9dd9faacf1be71b76045d /crypto/testmgr.c
parentcbc0a40e17da361a2ada8d669413ccfbd2028f2d (diff)
downloadlinux-f3813f4b287e480b1fcd62ca798d8556644b8278.tar.bz2
crypto: add rocksoft 64b crc guard tag framework
Hardware specific features may be able to calculate a crc64, so provide a framework for drivers to register their implementation. If nothing is registered, fallback to the generic table lookup implementation. The implementation is modeled after the crct10dif equivalent. Signed-off-by: Keith Busch <kbusch@kernel.org> Link: https://lore.kernel.org/r/20220303201312.3255347-7-kbusch@kernel.org Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'crypto/testmgr.c')
-rw-r--r--crypto/testmgr.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/crypto/testmgr.c b/crypto/testmgr.c
index 5831d4bbc64f..2e120eea10b1 100644
--- a/crypto/testmgr.c
+++ b/crypto/testmgr.c
@@ -4527,6 +4527,13 @@ static const struct alg_test_desc alg_test_descs[] = {
.hash = __VECS(crc32c_tv_template)
}
}, {
+ .alg = "crc64-rocksoft",
+ .test = alg_test_hash,
+ .fips_allowed = 1,
+ .suite = {
+ .hash = __VECS(crc64_rocksoft_tv_template)
+ }
+ }, {
.alg = "crct10dif",
.test = alg_test_hash,
.fips_allowed = 1,