summaryrefslogtreecommitdiffstats
path: root/crypto/shash.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-02-10 13:25:42 +0100
committerIngo Molnar <mingo@elte.hu>2009-02-10 13:25:42 +0100
commitf9915bfef3c64ea0b0b960dd1b999b584a7ef460 (patch)
treeec8d1c35a542e4c8e08b5a2be380b2bdef9a10d0 /crypto/shash.c
parentb91facc367366b3f71375f337eb5997ec9ab4e69 (diff)
parentacd895795d35d7c6405f20301a846d16998795ec (diff)
Merge branches 'tracing/ftrace' and 'tracing/urgent' into tracing/core
Diffstat (limited to 'crypto/shash.c')
-rw-r--r--crypto/shash.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/crypto/shash.c b/crypto/shash.c
index c9df367332f..d5a2b619c55 100644
--- a/crypto/shash.c
+++ b/crypto/shash.c
@@ -388,10 +388,15 @@ static int crypto_init_shash_ops_compat(struct crypto_tfm *tfm)
struct shash_desc *desc = crypto_tfm_ctx(tfm);
struct crypto_shash *shash;
+ if (!crypto_mod_get(calg))
+ return -EAGAIN;
+
shash = __crypto_shash_cast(crypto_create_tfm(
calg, &crypto_shash_type));
- if (IS_ERR(shash))
+ if (IS_ERR(shash)) {
+ crypto_mod_put(calg);
return PTR_ERR(shash);
+ }
desc->tfm = shash;
tfm->exit = crypto_exit_shash_ops_compat;