Message ID | 1470292695-9829-1-git-send-email-anton@ozlabs.org (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Herbert Xu |
Headers | show |
Anton Blanchard <anton@ozlabs.org> writes: > From: Anton Blanchard <anton@samba.org> > > This patch utilises the GENERIC_CPU_AUTOPROBE infrastructure > to automatically load the crc32c-vpmsum module if the CPU supports > it. > > Signed-off-by: Anton Blanchard <anton@samba.org> > --- > arch/powerpc/crypto/crc32c-vpmsum_glue.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/crypto/crc32c-vpmsum_glue.c b/arch/powerpc/crypto/crc32c-vpmsum_glue.c > index bfe3d37..9fa046d 100644 > --- a/arch/powerpc/crypto/crc32c-vpmsum_glue.c > +++ b/arch/powerpc/crypto/crc32c-vpmsum_glue.c > @@ -4,6 +4,7 @@ > #include <linux/module.h> > #include <linux/string.h> > #include <linux/kernel.h> > +#include <linux/cpufeature.h> > #include <asm/switch_to.h> > > #define CHKSUM_BLOCK_SIZE 1 > @@ -157,7 +158,7 @@ static void __exit crc32c_vpmsum_mod_fini(void) > crypto_unregister_shash(&alg); > } > > -module_init(crc32c_vpmsum_mod_init); > +module_cpu_feature_match(PPC_MODULE_FEATURE_VEC_CRYPTO, crc32c_vpmsum_mod_init); Is VEC_CRYPTO the right feature? That's new power8 crypto stuff. I thought this only used VMX? (but I haven't looked closely) cheers -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Michael, > Is VEC_CRYPTO the right feature? > > That's new power8 crypto stuff. The vpmsum* instructions are part of the same pipeline as the vcipher* instructions, introduced in POWER8. > I thought this only used VMX? (but I haven't looked closely) Yes, vcipher* and vpmsum* are VMX instructions. Anton -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Anton Blanchard <anton@samba.org> writes: > Hi Michael, > >> Is VEC_CRYPTO the right feature? >> >> That's new power8 crypto stuff. > > The vpmsum* instructions are part of the same pipeline as the vcipher* > instructions, introduced in POWER8. OK. >> I thought this only used VMX? (but I haven't looked closely) > > Yes, vcipher* and vpmsum* are VMX instructions. Right. The confusion is that we have PPC_FEATURE_HAS_ALTIVEC, but that doesn't mean we have *these* VMX instructions. This is actually an arch/powerpc patch, so I'll merge it unless Herbert objects. cheers -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Michael Ellerman <mpe@ellerman.id.au> wrote: > > This is actually an arch/powerpc patch, so I'll merge it unless Herbert > objects. It's fine with me. Cheers,
On Thu, 2016-04-08 at 06:38:15 UTC, Anton Blanchard wrote: > From: Anton Blanchard <anton@samba.org> > > This patch utilises the GENERIC_CPU_AUTOPROBE infrastructure > to automatically load the crc32c-vpmsum module if the CPU supports > it. > > Signed-off-by: Anton Blanchard <anton@samba.org> Applied to powerpc fixes, thanks. https://git.kernel.org/powerpc/c/d2cf5be07ff7c7cde8bef8551a cheers -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/powerpc/crypto/crc32c-vpmsum_glue.c b/arch/powerpc/crypto/crc32c-vpmsum_glue.c index bfe3d37..9fa046d 100644 --- a/arch/powerpc/crypto/crc32c-vpmsum_glue.c +++ b/arch/powerpc/crypto/crc32c-vpmsum_glue.c @@ -4,6 +4,7 @@ #include <linux/module.h> #include <linux/string.h> #include <linux/kernel.h> +#include <linux/cpufeature.h> #include <asm/switch_to.h> #define CHKSUM_BLOCK_SIZE 1 @@ -157,7 +158,7 @@ static void __exit crc32c_vpmsum_mod_fini(void) crypto_unregister_shash(&alg); } -module_init(crc32c_vpmsum_mod_init); +module_cpu_feature_match(PPC_MODULE_FEATURE_VEC_CRYPTO, crc32c_vpmsum_mod_init); module_exit(crc32c_vpmsum_mod_fini); MODULE_AUTHOR("Anton Blanchard <anton@samba.org>");