1
linux/drivers/net
Hangbin Liu 8eb36164d1 bonding: add ns target multicast address to slave device
Commit 4598380f9c ("bonding: fix ns validation on backup slaves")
tried to resolve the issue where backup slaves couldn't be brought up when
receiving IPv6 Neighbor Solicitation (NS) messages. However, this fix only
worked for drivers that receive all multicast messages, such as the veth
interface.

For standard drivers, the NS multicast message is silently dropped because
the slave device is not a member of the NS target multicast group.

To address this, we need to make the slave device join the NS target
multicast group, ensuring it can receive these IPv6 NS messages to validate
the slave’s status properly.

There are three policies before joining the multicast group:
1. All settings must be under active-backup mode (alb and tlb do not support
   arp_validate), with backup slaves and slaves supporting multicast.
2. We can add or remove multicast groups when arp_validate changes.
3. Other operations, such as enslaving, releasing, or setting NS targets,
   need to be guarded by arp_validate.

Fixes: 4e24be018e ("bonding: add new parameter ns_targets")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2024-11-14 11:16:28 +01:00
..
arcnet net: arcnet: com20020-isa: add missing MODULE_DESCRIPTION() macro 2024-06-19 17:21:12 -07:00
bonding bonding: add ns target multicast address to slave device 2024-11-14 11:16:28 +01:00
caif
can can: mcp251xfd: mcp251xfd_get_tef_len(): fix length calculation 2024-11-04 18:01:07 +01:00
dsa net: dsa: mv88e6xxx: support 4000ps cycle counter period 2024-10-24 12:57:46 +02:00
ethernet net: ti: icssg-prueth: Fix 1 PPS sync 2024-11-14 10:34:56 +01:00
fddi
fjes minmax: make generic MIN() and MAX() macros available everywhere 2024-07-28 15:49:18 -07:00
hamradio TTY/Serial driver update for 6.12-rc1 2024-09-26 09:59:50 -07:00
hippi
hyperv hv_netvsc: Fix VF namespace also in synthetic NIC NETDEV_REGISTER event 2024-10-24 12:43:20 +02:00
ieee802154 Including fixes from ieee802154, bluetooth and netfilter. 2024-10-03 09:44:00 -07:00
ipa net: ipa: make use of dev_err_cast_probe() 2024-08-29 11:41:05 -07:00
ipvlan netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
mctp mctp i2c: handle NULL header address 2024-10-29 11:22:38 -07:00
mdio net: phy: mdio-bcm-unimac: Add BCM6846 support 2024-10-15 18:23:53 -07:00
netdevsim netdevsim: Add trailing zero to terminate the string in nsim_nexthop_bucket_activity_write() 2024-10-29 11:43:01 -07:00
pcs net: pcs: xpcs: fix the wrong register that was written back 2024-10-01 11:00:50 +02:00
phy net: phylink: ensure PHY momentary link-fails are handled 2024-11-13 18:52:54 -08:00
plip net: plip: fix break; causing plip to never transmit 2024-10-19 16:06:55 -05:00
ppp ppp: fix ppp_async_encode() illegal access 2024-10-10 08:47:13 -07:00
pse-pd net: pse-pd: Fix out of bound for loop 2024-10-19 15:55:56 -05:00
slip slip: make slhc_remember() more robust against malicious packets 2024-10-10 09:06:32 -07:00
team netdev_features: convert NETIF_F_NETNS_LOCAL to dev->netns_local 2024-09-03 11:36:43 +02:00
thunderbolt
usb net: usb: qmi_wwan: add Quectel RG650V 2024-10-29 11:49:29 -07:00
vmxnet3 vmxnet3: Fix packet corruption in vmxnet3_xdp_xmit_frame 2024-10-17 11:27:17 +02:00
vxlan vxlan: Handle error of rtnl_register_module(). 2024-10-10 15:39:35 +02:00
wan net: wan: fsl_qmc_hdlc: Discard received CRC 2024-07-31 18:09:08 -07:00
wireguard netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
wireless wifi: iwlwifi: mvm: fix 6 GHz scan construction 2024-10-25 17:53:47 +02:00
wwan net: wwan: t7xx: Fix off-by-one error in t7xx_dpmaif_rx_buf_alloc() 2024-11-03 07:59:30 -08:00
xen-netback net/xen-netback: prevent UAF in xenvif_flush_hash() 2024-08-28 17:07:42 -07:00
amt.c netdev_features: convert NETIF_F_NETNS_LOCAL to dev->netns_local 2024-09-03 11:36:43 +02:00
bareudp.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-09-15 09:13:19 -07:00
dummy.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
eql.c net: fill in MODULE_DESCRIPTION()s under drivers/net/ 2023-10-28 11:29:28 +01:00
geneve.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
gtp.c gtp: allow -1 to be specified as file description from userspace 2024-10-29 11:24:08 -07:00
ifb.c net: fill in MODULE_DESCRIPTION()s under drivers/net/ 2023-10-28 11:29:28 +01:00
Kconfig net: netdevsim: select PAGE_POOL in Kconfig 2024-04-17 18:25:30 -07:00
LICENSE.SRC
loopback.c netdev_features: convert NETIF_F_NETNS_LOCAL to dev->netns_local 2024-09-03 11:36:43 +02:00
macsec.c macsec: Fix use-after-free while sending the offloading packet 2024-10-28 16:13:50 -07:00
macvlan.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
macvtap.c net: fill in MODULE_DESCRIPTION()s under drivers/net/ 2023-10-28 11:29:28 +01:00
Makefile net: Always descend into dsa/ folder with CONFIG_NET_DSA enabled 2024-05-20 11:04:29 +01:00
mdio.c
mhi_net.c net: mhi: Remove redundant initialization owner in mhi_net_driver 2023-08-10 17:29:42 -07:00
mii.c net: mii: make mii_ethtool_gset() return void 2021-08-19 13:06:53 +01:00
net_failover.c netdev_features: convert NETIF_F_NETNS_LOCAL to dev->netns_local 2024-09-03 11:36:43 +02:00
netconsole.c net: netconsole: fix wrong warning 2024-10-09 19:42:43 -07:00
netkit.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-09-15 09:13:19 -07:00
nlmon.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
ntb_netdev.c net: ntb_netdev: Move ntb_netdev_rx_handler() to call netif_rx() from __netif_rx() 2024-07-02 18:56:46 -07:00
pfcp.c pfcp: avoid copy warning by simplifing code 2024-04-08 11:46:41 +01:00
rionet.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
sb1000.c
Space.c net: appletalk: remove cops support 2023-10-04 11:49:20 -07:00
sungem_phy.c net: sungem_phy: Constify struct mii_phy_def 2024-08-08 19:59:06 -07:00
tap.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
tun.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
veth.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
virtio_net.c virtio_net: Update rss when set queue 2024-11-07 12:40:10 +01:00
vrf.c vrf: revert "vrf: Remove unnecessary RCU-bh critical section" 2024-10-02 17:26:11 -07:00
vsockmon.c netdev_features: convert NETIF_F_LLTX to dev->lltx 2024-09-03 11:36:43 +02:00
xen-netfront.c net: annotate writes on dev->mtu from ndo_change_mtu() 2024-05-07 16:19:14 -07:00