|
@@ -95,6 +95,9 @@ static void crypto_remove_spawn(struct crypto_spawn *spawn,
|
|
|
return;
|
|
|
|
|
|
inst->alg.cra_flags |= CRYPTO_ALG_DEAD;
|
|
|
+ if (hlist_unhashed(&inst->list))
|
|
|
+ return;
|
|
|
+
|
|
|
if (!tmpl || !crypto_tmpl_get(tmpl))
|
|
|
return;
|
|
|
|
|
@@ -335,9 +338,6 @@ int crypto_register_instance(struct crypto_template *tmpl,
|
|
|
LIST_HEAD(list);
|
|
|
int err = -EINVAL;
|
|
|
|
|
|
- if (inst->alg.cra_destroy)
|
|
|
- goto err;
|
|
|
-
|
|
|
err = crypto_check_alg(&inst->alg);
|
|
|
if (err)
|
|
|
goto err;
|