On Fri, May 31, 2024 at 10:53:22AM +0200, Marek Vasut wrote: > include/linux/pm_runtime.h pm_runtime_get_sync() description suggests to > ... consider using pm_runtime_resume_and_get() instead of it, especially > if its return value is checked by the caller, as this is likely to result > in cleaner code. > > This is indeed better, switch to pm_runtime_resume_and_get() which > correctly suspends the device again in case of failure. Also add error > checking into the RNG driver in case pm_runtime_resume_and_get() does > fail, which is currently not done, and it does detect sporadic -EACCES > error return after resume, which would otherwise lead to a hang due to > register access on un-resumed hardware. Now the read simply errors out > and the system does not hang. > > Acked-by: Gatien Chevallier <gatien.chevallier@xxxxxxxxxxx> > Signed-off-by: Marek Vasut <marex@xxxxxxx> > --- > Cc: "Uwe Kleine-König" <u.kleine-koenig@xxxxxxxxxxxxxx> > Cc: Alexandre Torgue <alexandre.torgue@xxxxxxxxxxx> > Cc: Gatien Chevallier <gatien.chevallier@xxxxxxxxxxx> > Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > Cc: Marek Vasut <marex@xxxxxxx> > Cc: Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx> > Cc: Olivia Mackall <olivia@xxxxxxxxxxx> > Cc: Rob Herring <robh@xxxxxxxxxx> > Cc: Yang Yingliang <yangyingliang@xxxxxxxxxx> > Cc: kernel@xxxxxxxxxxxxxxxxxx > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Cc: linux-crypto@xxxxxxxxxxxxxxx > Cc: linux-stm32@xxxxxxxxxxxxxxxxxxxxxxxxxxxx > --- > V2: Add AB from Gatien > V3: No change > --- > drivers/char/hw_random/stm32-rng.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) All 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