]> git.baikalelectronics.ru Git - kernel.git/commit
net: bonding: replace dev_trans_start() with the jiffies of the last ARP/NS
authorVladimir Oltean <vladimir.oltean@nxp.com>
Sun, 31 Jul 2022 12:41:05 +0000 (15:41 +0300)
committerJakub Kicinski <kuba@kernel.org>
Thu, 4 Aug 2022 02:20:12 +0000 (19:20 -0700)
commit44a7c79c3e334e4e22bcc1ccc85da8d7903eb6d8
treeef4ea93c41d047816fe97ce25ec2d9f7a40130dd
parenta83ebd332686ef14e033b72006c97bcf38b6cc0a
net: bonding: replace dev_trans_start() with the jiffies of the last ARP/NS

The bonding driver piggybacks on time stamps kept by the network stack
for the purpose of the netdev TX watchdog, and this is problematic
because it does not work with NETIF_F_LLTX devices.

It is hard to say why the driver looks at dev_trans_start() of the
slave->dev, considering that this is updated even by non-ARP/NS probes
sent by us, and even by traffic not sent by us at all (for example PTP
on physical slave devices). ARP monitoring in active-backup mode appears
to still work even if we track only the last TX time of actual ARP
probes.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Acked-by: Jay Vosburgh <jay.vosburgh@canonical.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/bonding/bond_main.c
include/net/bonding.h