On Wed, May 28, 2025 at 02:59:41PM +0800, Qunqin Zhao wrote:
>
> +     if (!rng_devices.is_init) {
> +             ret = crypto_register_rng(&loongson_rng_alg);
> +             if (ret) {
> +                     dev_err(&pdev->dev, "failed to register crypto(%d)\n", 
> ret);
> +                     return ret;
> +             }
> +             INIT_LIST_HEAD(&rng_devices.list);
> +             mutex_init(&rng_devices.lock);
> +             rng_devices.is_init = true;
> +     }

This doesn't look right.  What stops two devices from both entering
this code path when is_init == false?

Cheers,
-- 
Email: Herbert Xu <herb...@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

Reply via email to