Message ID | cover.1685692810.git.geert+renesas@glider.be (mailing list archive) |
---|---|
Headers | show |
Series | iopoll: Busy loop and timeout improvements + conversions | expand |
On Fri, Jun 2, 2023 at 10:51 AM Geert Uytterhoeven <geert+renesas@glider.be> wrote: > When implementing a polling loop, a common review comment is to use one > of the read*_poll_timeout*() helpers. Unfortunately this is not always > possible, or might introduce subtle bugs. This patch series aims to > improve these helpers, so they can gain wider use. > > 1. The first patch improves busy-looping behavior of both the atomic > and non-atomic read*_poll_timeout*() helpers. > The issue addressed by this patch was discussed before[1-2], but I > am not aware of any patches moving forward. > > 2. The second patch fixes timeout handling of the atomic variants. > Some of the issues addressed by this patch were mitigated in > various places[3-5], and some of these findings may be of interest > to the authors of [6-8]. > > The first two patches were sent before, and already received some acks > and reviews. I plan to queue these in an immutable and tagged branch > after the weekend, for consumption by myself, and by other interested > parties. FTR... The following changes since commit ac9a78681b921877518763ba0e89202254349d1b: Linux 6.4-rc1 (2023-05-07 13:34:35 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git tags/iopoll-busy-loop-timeout-tag for you to fetch changes up to 7349a69cf3125e92d48e442d9f400ba446fa314f: iopoll: Do not use timekeeping in read_poll_timeout_atomic() (2023-06-05 15:35:27 +0200) ---------------------------------------------------------------- iopoll: Busy loop and timeout improvements ---------------------------------------------------------------- Geert Uytterhoeven (2): iopoll: Call cpu_relax() in busy loops iopoll: Do not use timekeeping in read_poll_timeout_atomic() include/linux/iopoll.h | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) Gr{oetje,eeting}s, Geert