Re: [PATCH v2] neighbour: Don't let neigh_forced_gc() disable preemption for long

From: Eric Dumazet
Date: Wed Dec 06 2023 - 02:34:43 EST


On Wed, Dec 6, 2023 at 4:39 AM Judy Hsiao <judyhsiao@xxxxxxxxxxxx> wrote:
>
> We are seeing cases where neigh_cleanup_and_release() is called by
> neigh_forced_gc() many times in a row with preemption turned off.
> When running on a low powered CPU at a low CPU frequency, this has
> been measured to keep preemption off for ~10 ms. That's not great on a
> system with HZ=1000 which expects tasks to be able to schedule in
> with ~1ms latency.
>
> Suggested-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
> Signed-off-by: Judy Hsiao <judyhsiao@xxxxxxxxxxxx>
>
> ---
>
> Changes in v2:
> - Use ktime_get_ns() for timeout calculation instead of jiffies.

SGTM, thanks.
Reviewed-by: Eric Dumazet <edumazet@xxxxxxxxxx>