Michael Büsch <m@xxxxxxx> wrote: > [-- text/plain, encoding quoted-printable, charset: UTF-8, 57 lines --] > > enable_best_rng() is used in hwrng_unregister() to switch away from the > currently active RNG, if that is the one currently being removed. > However enable_best_rng() might fail, if the next RNG's init routine > fails. In that case enable_best_rng() will return an error code and > the currently active RNG will remain active. > After unregistering this might lead to crashes due to use-after-free. > > Fix this by dropping the currently active RNG, if enable_best_rng() > failed. This will result in no RNG to be active, if the next-best > one failed to initialize. > > This problem was introduced by 142a27f0a731ddcf467546960a5585970ca98e21 > > > Reported-by: Wirz <spam@xxxxxxxxxxxxx> > Tested-by: Wirz <spam@xxxxxxxxxxxxx> > Signed-off-by: Michael Büsch <m@xxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx Patch applied. Thanks. -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt