bonding: don't force LACPDU tx to ~333 ms boundaries
authorSeth Forshee (DigitalOcean) <sforshee@kernel.org>
Wed, 25 Jun 2025 16:01:24 +0000 (11:01 -0500)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 3 Jul 2025 13:24:40 +0000 (15:24 +0200)
commit135faae63218808475501b1d4eab8b2342a131f9
treec1643e402baf811854785e43451dd470a05a1637
parent8b98f34ce1d8c520403362cb785231f9898eb3ff
bonding: don't force LACPDU tx to ~333 ms boundaries

The timer which ensures that no more than 3 LACPDUs are transmitted in
a second rearms itself every 333ms regardless of whether an LACPDU is
transmitted when the timer expires. This causes LACPDU tx to be delayed
until the next expiration of the timer, which effectively aligns LACPDUs
to ~333ms boundaries. This results in a variable amount of jitter in the
timing of periodic LACPDUs.

Change this to only rearm the timer when an LACPDU is actually sent,
allowing tx at any point after the timer has expired.

Signed-off-by: Seth Forshee (DigitalOcean) <sforshee@kernel.org>
Reviewed-by: Carlos Bilbao <carlos.bilbao@kernel.org>
Link: https://patch.msgid.link/20250625-fix-lacpdu-jitter-v1-1-4d0ee627e1ba@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/bonding/bond_3ad.c