From: Nicolas Dichtel <hidden> Date: 2021-11-12 07:56:18
As stated in the bonding doc, trans_start must be set manually for drivers
using NETIF_F_LLTX:
Drivers that use NETIF_F_LLTX flag must also update
netdev_queue->trans_start. If they do not, then the ARP monitor will
immediately fail any slaves using that driver, and those slaves will stay
down.
Link: https://www.kernel.org/doc/html/v5.15/networking/bonding.html#arp-monitor-operation
Signed-off-by: Nicolas Dichtel <redacted>
---
drivers/net/tun.c | 5 +++++
1 file changed, 5 insertions(+)
@@ -1054,6 +1055,10 @@ static netdev_tx_t tun_net_xmit(struct sk_buff *skb, struct net_device *dev)if(ptr_ring_produce(&tfile->tx_ring,skb))gotodrop;+/* NETIF_F_LLTX requires to do our own update of trans_start */+queue=netdev_get_tx_queue(dev,txq);+queue->trans_start=jiffies;+/* Notify and wake up reader process */if(tfile->flags&TUN_FASYNC)kill_fasync(&tfile->fasync,SIGIO,POLL_IN);
Hello:
This patch was applied to netdev/net.git (master)
by David S. Miller [off-list ref]:
On Fri, 12 Nov 2021 08:56:03 +0100 you wrote:
As stated in the bonding doc, trans_start must be set manually for drivers
using NETIF_F_LLTX:
Drivers that use NETIF_F_LLTX flag must also update
netdev_queue->trans_start. If they do not, then the ARP monitor will
immediately fail any slaves using that driver, and those slaves will stay
down.
[...]
From: Nicolas Dichtel <hidden> Date: 2021-11-19 17:26:21
Le 15/11/2021 à 14:10, patchwork-bot+netdevbpf@kernel.org a écrit :
Hello:
This patch was applied to netdev/net.git (master)
by David S. Miller [off-list ref]:
On Fri, 12 Nov 2021 08:56:03 +0100 you wrote:
quoted
As stated in the bonding doc, trans_start must be set manually for drivers
using NETIF_F_LLTX:
Drivers that use NETIF_F_LLTX flag must also update
netdev_queue->trans_start. If they do not, then the ARP monitor will
immediately fail any slaves using that driver, and those slaves will stay
down.
[...]
May I ask for a backport to stable of this patch?
It's now in Linus tree: a31d27fbed5d ("tun: fix bonding active backup with arp
monitoring"):
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a31d27fbed5d
I didn't put a Fixes tag in the original submission because the bug is there
before git ages.
Maybe "Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")" would have been a better choice.
Regards,
Nicolas
On Fri, Nov 19, 2021 at 06:26:17PM +0100, Nicolas Dichtel wrote:
Le 15/11/2021 à 14:10, patchwork-bot+netdevbpf@kernel.org a écrit :
quoted
Hello:
This patch was applied to netdev/net.git (master)
by David S. Miller [off-list ref]:
On Fri, 12 Nov 2021 08:56:03 +0100 you wrote:
quoted
As stated in the bonding doc, trans_start must be set manually for drivers
using NETIF_F_LLTX:
Drivers that use NETIF_F_LLTX flag must also update
netdev_queue->trans_start. If they do not, then the ARP monitor will
immediately fail any slaves using that driver, and those slaves will stay
down.
[...]
May I ask for a backport to stable of this patch?
It's now in Linus tree: a31d27fbed5d ("tun: fix bonding active backup with arp
monitoring"):
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a31d27fbed5d
I didn't put a Fixes tag in the original submission because the bug is there
before git ages.
Maybe "Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")" would have been a better choice.