[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAO+Okf5r-rVVqwYiCHXEt_jh0StmVoUikqYfSn7y3QpGZMR3Vg@mail.gmail.com>
Date: Mon, 27 Jun 2022 18:39:34 -0700
From: Gregory Erwin <gregerwin256@...il.com>
To: Toke Høiland-Jørgensen <toke@...hat.com>
Cc: "Jason A. Donenfeld" <Jason@...c4.com>,
linux-wireless@...r.kernel.org, linux-kernel@...r.kernel.org,
Kalle Valo <kvalo@...nel.org>,
Rui Salvaterra <rsalvaterra@...il.com>,
Herbert Xu <herbert@...dor.apana.org.au>,
stable@...r.kernel.org
Subject: Re: [PATCH v6] ath9k: sleep for less time when unregistering hwrng
On Mon, Jun 27, 2022 at 5:18 AM Toke Høiland-Jørgensen <toke@...hat.com> wrote:
>
> "Jason A. Donenfeld" <Jason@...c4.com> 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@...il.com>
> > Tested-by: Gregory Erwin <gregerwin256@...il.com>
> > Cc: Toke Høiland-Jørgensen <toke@...hat.com>
> > Cc: Kalle Valo <kvalo@...nel.org>
> > Cc: Rui Salvaterra <rsalvaterra@...il.com>
> > Cc: Herbert Xu <herbert@...dor.apana.org.au>
> > Cc: stable@...r.kernel.org
> > Fixes: fcd09c90c3c5 ("ath9k: use hw_random API instead of directly dumping into random.c")
> > Link: https://lore.kernel.org/all/CAO+Okf6ZJC5-nTE_EJUGQtd8JiCkiEHytGgDsFGTEjs0c00giw@mail.gmail.com/
> > Link: https://lore.kernel.org/lkml/CAO+Okf5k+C+SE6pMVfPf-d8MfVPVq4PO7EY8Hys_DVXtent3HA@mail.gmail.com/
> > Link: https://bugs.archlinux.org/task/75138
> > Signed-off-by: Jason A. Donenfeld <Jason@...c4.com>
>
> Gregory, care to take this version for a spin as well to double-check
> that it still resolves the issue? :)
>
> -Toke
>
With patch v6, reads from /dev/hwrng block for 5-6s, during which 'ip link set
wlan0 down' will also block. Otherwise, 'ip link set wlan0 down' returns
immediately. Similarly, wiphy_suspend() consistently returns in under 10ms.
Tested-by: Gregory Erwin <gregerwin256@...il.com>
Powered by blists - more mailing lists