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 <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt