Re: [PATCH v2] crypto: remove instance when test failed

From: Herbert Xu
Date: Fri Apr 03 2015 - 05:58:39 EST


On Thu, Apr 02, 2015 at 07:05:27PM +0200, Stephan Mueller wrote:
>
> diff --git a/crypto/algapi.c b/crypto/algapi.c
> index 83b04e0..215c604 100644
> --- a/crypto/algapi.c
> +++ b/crypto/algapi.c
> @@ -545,6 +545,10 @@ unlock:
> goto err;
>
> crypto_wait_for_test(larval);
> +
> + /* Remove instance if test failed */
> + if (!(inst->alg.cra_flags & CRYPTO_ALG_TESTED))
> + crypto_unregister_instance(inst);

Unfortunately I don't think this is safe because the moment you
release the mutex the instance can be freed. So you'll need to
hold a reference to it.

Cheers,
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/