Re: [PATCH v3 0/7] iopoll: Busy loop and timeout improvements + conversions

From: Geert Uytterhoeven
Date: Mon Jun 05 2023 - 11:10:14 EST


On Fri, Jun 2, 2023 at 10:51 AM Geert Uytterhoeven
<geert+renesas@xxxxxxxxx> 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

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds