crypto: tcrypt - Add debug prints
authorRabin Vincent <rabinv@axis.com>
Wed, 18 Jan 2017 13:54:05 +0000 (14:54 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 23 Jan 2017 14:50:24 +0000 (22:50 +0800)
tcrypt is very tight-lipped when it succeeds, but a bit more feedback
would be useful when developing or debugging crypto drivers, especially
since even a successful run ends with the module failing to insert. Add
a couple of debug prints, which can be enabled with dynamic debug:

Before:

 # insmod tcrypt.ko mode=10
 insmod: can't insert 'tcrypt.ko': Resource temporarily unavailable

After:

 # insmod tcrypt.ko mode=10 dyndbg
 tcrypt: testing ecb(aes)
 tcrypt: testing cbc(aes)
 tcrypt: testing lrw(aes)
 tcrypt: testing xts(aes)
 tcrypt: testing ctr(aes)
 tcrypt: testing rfc3686(ctr(aes))
 tcrypt: all tests passed
 insmod: can't insert 'tcrypt.ko': Resource temporarily unavailable

Signed-off-by: Rabin Vincent <rabinv@axis.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/tcrypt.c

index ae22f05d5936c724f830cd00afee303a85836dd5..9a11f3c2bf983ebc79b407a7d65d0cb3fb4306d9 100644 (file)
@@ -22,6 +22,8 @@
  *
  */
 
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+
 #include <crypto/aead.h>
 #include <crypto/hash.h>
 #include <crypto/skcipher.h>
@@ -1010,6 +1012,8 @@ static inline int tcrypt_test(const char *alg)
 {
        int ret;
 
+       pr_debug("testing %s\n", alg);
+
        ret = alg_test(alg, alg, 0, 0);
        /* non-fips algs return -EINVAL in fips mode */
        if (fips_enabled && ret == -EINVAL)
@@ -2059,6 +2063,8 @@ static int __init tcrypt_mod_init(void)
        if (err) {
                printk(KERN_ERR "tcrypt: one or more tests failed!\n");
                goto err_free_tv;
+       } else {
+               pr_debug("all tests passed\n");
        }
 
        /* We intentionaly return -EAGAIN to prevent keeping the module,