crypto: drbg - report backend_cra_name when allocation fails
authorSergey Senozhatsky <sergey.senozhatsky@gmail.com>
Wed, 10 Jun 2015 13:27:48 +0000 (22:27 +0900)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 11 Jun 2015 13:55:28 +0000 (21:55 +0800)
Be more verbose and also report ->backend_cra_name when
crypto_alloc_shash() or crypto_alloc_cipher() fail in
drbg_init_hash_kernel() or drbg_init_sym_kernel()
correspondingly.

Example
 DRBG: could not allocate digest TFM handle: hmac(sha256)

Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/drbg.c

index 5fad297..a7c2314 100644 (file)
@@ -1635,7 +1635,8 @@ static int drbg_init_hash_kernel(struct drbg_state *drbg)
 
        tfm = crypto_alloc_shash(drbg->core->backend_cra_name, 0, 0);
        if (IS_ERR(tfm)) {
-               pr_info("DRBG: could not allocate digest TFM handle\n");
+               pr_info("DRBG: could not allocate digest TFM handle: %s\n",
+                               drbg->core->backend_cra_name);
                return PTR_ERR(tfm);
        }
        BUG_ON(drbg_blocklen(drbg) != crypto_shash_digestsize(tfm));
@@ -1686,7 +1687,8 @@ static int drbg_init_sym_kernel(struct drbg_state *drbg)
 
        tfm = crypto_alloc_cipher(drbg->core->backend_cra_name, 0, 0);
        if (IS_ERR(tfm)) {
-               pr_info("DRBG: could not allocate cipher TFM handle\n");
+               pr_info("DRBG: could not allocate cipher TFM handle: %s\n",
+                               drbg->core->backend_cra_name);
                return PTR_ERR(tfm);
        }
        BUG_ON(drbg_blocklen(drbg) != crypto_cipher_blocksize(tfm));