crypto: cavium/zip - fix collision with generic cra_driver_name
PATCH 1/1 crypto: cavium/zip - fix collision with generic cra_driver_name
From: Eric Biggers <[email protected]>
The cavium/zip implementation of the deflate compression algorithm is incorrectly being registered under the generic driver name, which prevents the generic implementation from being registered with the crypto API when CONFIG_CRYPTO_DEV_CAVIUM_ZIP=y. Similarly the lzs algorithm (which does not currently have a generic implementation...) is incorrectly being registered as lzs-generic.
Fix the naming collision by adding a suffix "-cavium" to the cra_driver_name of the cavium/zip algorithms.
--- drivers/crypto/cavium/zip/zip_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
drivers/crypto/cavium/zip/zip_main.c +4 -2
@@ -351,6 +351,7 @@ static struct pci_driver zip_driver = {static struct crypto_alg zip_comp_deflate = { .cra_name ="deflate" , + .cra_driver_name ="deflate-cavium" , .cra_flags =CRYPTO_ALG_TYPE_COMPRESS , .cra_ctxsize =sizeof (struct zip_kernel_ctx ), .cra_priority =300 ,
@@ -365,6 +366,7 @@ static struct crypto_alg zip_comp_deflate = {static struct crypto_alg zip_comp_lzs = { .cra_name ="lzs" , + .cra_driver_name ="lzs-cavium" , .cra_flags =CRYPTO_ALG_TYPE_COMPRESS , .cra_ctxsize =sizeof (struct zip_kernel_ctx ), .cra_priority =300 ,
@@ -384,7 +386,7 @@ static struct scomp_alg zip_scomp_deflate = { .decompress = zip_scomp_decompress, .base = { .cra_name = "deflate", - .cra_driver_name = "deflate-scomp", + .cra_driver_name = "deflate-scomp-cavium", .cra_module = THIS_MODULE, .cra_priority = 300, }
@@ -397,7 +399,7 @@ static struct scomp_alg zip_scomp_lzs = { .decompress = zip_scomp_decompress, .base = { .cra_name = "lzs", - .cra_driver_name = "lzs-scomp", + .cra_driver_name = "lzs-scomp-cavium", .cra_module = THIS_MODULE, .cra_priority = 300, }
Signature · 1 line
2.20.1
Quoted 11 lines · Eric Biggers
From: Eric Biggers <[email protected]>
The cavium/zip implementation of the deflate compression algorithm is incorrectly being registered under the generic driver name, which prevents the generic implementation from being registered with the crypto API when
CONFIG_CRYPTO_DEV_CAVIUM_ZIP=y. Similarly the lzs algorithm (which does not currently have a generic implementation...) is incorrectly being registered as lzs-generic.Fix the naming collision by adding a suffix "-cavium" to the
cra_driver_nameof the cavium/zip algorithms.
The patch is fine, basically the same as:
https://marc.info/?l=linux-crypto-vger&m=152968599829763&w=2
Shouldn't we also rename deflate to deflate generic?
--Jan
Quoted 48 lines
Fixes 640035a2dc55 ("crypto: zip - Add ThunderX ZIP driver core")Cc Mahipal Challa <[email protected]>Cc Jan Glauber <[email protected]>Signed-off-by Eric Biggers <[email protected]>--- drivers/crypto/cavium/zip/zip_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)drivers/crypto/cavium/zip/zip_main.c +4
-3@@ -351,6 +351,7 @@ static struct pci_driver zip_driver = {static struct crypto_alg zip_comp_deflate = { .cra_name ="deflate" , + .cra_driver_name ="deflate-cavium" , .cra_flags =CRYPTO_ALG_TYPE_COMPRESS , .cra_ctxsize =sizeof (struct zip_kernel_ctx ), .cra_priority =300 ,@@ -365,6 +366,7 @@ static struct crypto_alg zip_comp_deflate = {static struct crypto_alg zip_comp_lzs = { .cra_name ="lzs" , + .cra_driver_name ="lzs-cavium" , .cra_flags =CRYPTO_ALG_TYPE_COMPRESS , .cra_ctxsize =sizeof (struct zip_kernel_ctx ), .cra_priority =300 ,@@ -384,7 +386,7 @@ static struct scomp_alg zip_scomp_deflate = { .decompress = zip_scomp_decompress, .base = { .cra_name = "deflate", - .cra_driver_name = "deflate-scomp", + .cra_driver_name = "deflate-scomp-cavium", .cra_module = THIS_MODULE, .cra_priority = 300, }@@ -397,7 +399,7 @@ static struct scomp_alg zip_scomp_lzs = { .decompress = zip_scomp_decompress, .base = { .cra_name = "lzs", - .cra_driver_name = "lzs-scomp", + .cra_driver_name = "lzs-scomp-cavium", .cra_module = THIS_MODULE, .cra_priority = 300, } --2.20.1
Quoted 13 lines · Jan Glauber
Quoted 11 lines · Eric Biggers
From: Eric Biggers <[email protected]>
The cavium/zip implementation of the deflate compression algorithm is incorrectly being registered under the generic driver name, which prevents the generic implementation from being registered with the crypto API when
CONFIG_CRYPTO_DEV_CAVIUM_ZIP=y. Similarly the lzs algorithm (which does not currently have a generic implementation...) is incorrectly being registered as lzs-generic.Fix the naming collision by adding a suffix "-cavium" to the
cra_driver_nameof the cavium/zip algorithms.
Quoted 7 lines
The patch is fine, basically the same as:
https://marc.info/?l=linux-crypto-vger&m=152968599829763&w=2Shouldn't we also rename deflate to deflate generic?
--Jan
It is already deflate-generic. Since cra_driver_name is unset, crypto_set_driver_name() in crypto/algapi.c appends "-generic" to cra_name = "deflate", forming cra_driver_name = "deflate-generic".
Personally I think that should be gotten rid of and the crypto API should require that cra_driver_name always be set, but that's what it does now.
Quoted 48 lines
Quoted 48 lines
Fixes 640035a2dc55 ("crypto: zip - Add ThunderX ZIP driver core")Cc Mahipal Challa <[email protected]>Cc Jan Glauber <[email protected]>Signed-off-by Eric Biggers <[email protected]>--- drivers/crypto/cavium/zip/zip_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)drivers/crypto/cavium/zip/zip_main.c +4
-3@@ -351,6 +351,7 @@ static struct pci_driver zip_driver = {static struct crypto_alg zip_comp_deflate = { .cra_name ="deflate" , + .cra_driver_name ="deflate-cavium" , .cra_flags =CRYPTO_ALG_TYPE_COMPRESS , .cra_ctxsize =sizeof (struct zip_kernel_ctx ), .cra_priority =300 ,@@ -365,6 +366,7 @@ static struct crypto_alg zip_comp_deflate = {static struct crypto_alg zip_comp_lzs = { .cra_name ="lzs" , + .cra_driver_name ="lzs-cavium" , .cra_flags =CRYPTO_ALG_TYPE_COMPRESS , .cra_ctxsize =sizeof (struct zip_kernel_ctx ), .cra_priority =300 ,@@ -384,7 +386,7 @@ static struct scomp_alg zip_scomp_deflate = { .decompress = zip_scomp_decompress, .base = { .cra_name = "deflate", - .cra_driver_name = "deflate-scomp", + .cra_driver_name = "deflate-scomp-cavium", .cra_module = THIS_MODULE, .cra_priority = 300, }@@ -397,7 +399,7 @@ static struct scomp_alg zip_scomp_lzs = { .decompress = zip_scomp_decompress, .base = { .cra_name = "lzs", - .cra_driver_name = "lzs-scomp", + .cra_driver_name = "lzs-scomp-cavium", .cra_module = THIS_MODULE, .cra_priority = 300, } --2.20.1
Herbert Xu
maintainerQuoted 12 lines · Eric Biggers
From: Eric Biggers <[email protected]>
The cavium/zip implementation of the deflate compression algorithm is incorrectly being registered under the generic driver name, which prevents the generic implementation from being registered with the crypto API when
CONFIG_CRYPTO_DEV_CAVIUM_ZIP=y. Similarly the lzs algorithm (which does not currently have a generic implementation...) is incorrectly being registered as lzs-generic.Fix the naming collision by adding a suffix "-cavium" to the
cra_driver_nameof the cavium/zip algorithms.
Quoted 7 lines
Fixes 640035a2dc55 ("crypto: zip - Add ThunderX ZIP driver core")Cc Mahipal Challa <[email protected]>Cc Jan Glauber <[email protected]>Signed-off-by Eric Biggers <[email protected]>--- drivers/crypto/cavium/zip/zip_main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
Patch applied. Thanks.
Signature · 3 lines
Email: Herbert Xu <[email protected]> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt