"Jason A. Donenfeld" <Jason@xxxxxxxxx> writes: > Even though hwrng provides a `wait` parameter, it doesn't work very well > when waiting for a long time. There are numerous deadlocks that emerge > related to shutdown. Work around this API limitation by waiting for a > shorter amount of time and erroring more frequently. This commit also > prevents hwrng from splatting messages to dmesg when there's a timeout > and switches to using schedule_timeout_interruptible(), so that the > kthread can be stopped. > > Reported-by: Gregory Erwin <gregerwin256@xxxxxxxxx> > Tested-by: Gregory Erwin <gregerwin256@xxxxxxxxx> > Cc: Toke Høiland-Jørgensen <toke@xxxxxxxxxx> > Cc: Kalle Valo <kvalo@xxxxxxxxxx> > Cc: Rui Salvaterra <rsalvaterra@xxxxxxxxx> > Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > Fixes: fcd09c90c3c5 ("ath9k: use hw_random API instead of directly dumping into random.c") > Link: https://lore.kernel.org/all/CAO+Okf6ZJC5-nTE_EJUGQtd8JiCkiEHytGgDsFGTEjs0c00giw@xxxxxxxxxxxxxx/ > Link: https://lore.kernel.org/lkml/CAO+Okf5k+C+SE6pMVfPf-d8MfVPVq4PO7EY8Hys_DVXtent3HA@xxxxxxxxxxxxxx/ > Link: https://bugs.archlinux.org/task/75138 > Signed-off-by: Jason A. Donenfeld <Jason@xxxxxxxxx> Gregory, care to take this version for a spin as well to double-check that it still resolves the issue? :) -Toke