diff options
| author | Eric Biggers <ebiggers@kernel.org> | 2026-06-08 17:58:47 +0000 |
|---|---|---|
| committer | Herbert Xu <herbert@gondor.apana.org.au> | 2026-07-05 13:19:52 +0800 |
| commit | 2ecdf5c9910e20f73639bc322f0518a3439d17c0 (patch) | |
| tree | f355caa0445ffcc54e9aa7767388fc4982350a38 /drivers/crypto/Kconfig | |
| parent | 4ef04bdc0c9f98836d1638be516f6bf1bad55f69 (diff) | |
| download | linux-next-2ecdf5c9910e20f73639bc322f0518a3439d17c0.tar.gz linux-next-2ecdf5c9910e20f73639bc322f0518a3439d17c0.zip | |
crypto: qcom-rng - Remove crypto_rng interface
qcom-rng.c exposes the same hardware through two completely separate
interfaces, crypto_rng and hwrng. However, the implementation of this
is buggy because it permits generation operations from these interfaces
to run concurrently with each other, accessing the same registers. That
is, qcom_rng_generate() synchronizes with itself but not with
qcom_hwrng_read(). This results in potential repetition of output from
the RNG, output of non-random values, etc.
Fortunately, there's actually no point in hardware RNG drivers
implementing the crypto_rng interface. It's not actually used by
anything besides the "rng" algorithm type of AF_ALG, which in turn is
not actually used in practice. Other crypto_rng hardware drivers are
likewise being phased out, leaving just the hwrng support.
Thus, remove it to simplify the code and avoid conflict (and confusion)
with the hwrng interface which is the one that actually matters.
Fixes: f29cd5bb64c2 ("crypto: qcom-rng - Add hw_random interface support")
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/Kconfig')
| -rw-r--r-- | drivers/crypto/Kconfig | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig index 216a00bad5d7..eb834d15d614 100644 --- a/drivers/crypto/Kconfig +++ b/drivers/crypto/Kconfig @@ -641,7 +641,6 @@ config CRYPTO_DEV_QCOM_RNG tristate "Qualcomm Random Number Generator Driver" depends on ARCH_QCOM || COMPILE_TEST depends on HW_RANDOM - select CRYPTO_RNG help This driver provides support for the Random Number Generator hardware found on Qualcomm SoCs. |
