* [PATCH net 0/2] bonding: fix incorrect mac address setting @ 2025-02-05 8:03 Hangbin Liu 2025-02-05 8:03 ` [PATCH net 1/2] bonding: fix incorrect MAC address setting to receive NA messages Hangbin Liu 2025-02-05 8:03 ` [PATCH net 2/2] selftests: bonding: fix incorrect mac address Hangbin Liu 0 siblings, 2 replies; 4+ messages in thread From: Hangbin Liu @ 2025-02-05 8:03 UTC (permalink / raw) To: netdev Cc: Jay Vosburgh, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Nikolay Aleksandrov, Simon Horman, Jianbo Liu, Boris Pismenny, Tariq Toukan, Shuah Khan, linux-kselftest, linux-kernel, Hangbin Liu The mac address on backup slave should be convert from Solicited-Node Multicast address, not from bonding unicast target address. Hangbin Liu (2): bonding: fix incorrect MAC address setting to receive NA messages selftests: bonding: fix incorrect mac address drivers/net/bonding/bond_options.c | 4 +++- tools/testing/selftests/drivers/net/bonding/bond_options.sh | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) -- 2.39.5 (Apple Git-154) ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH net 1/2] bonding: fix incorrect MAC address setting to receive NA messages 2025-02-05 8:03 [PATCH net 0/2] bonding: fix incorrect mac address setting Hangbin Liu @ 2025-02-05 8:03 ` Hangbin Liu 2025-02-05 12:01 ` Hangbin Liu 2025-02-05 8:03 ` [PATCH net 2/2] selftests: bonding: fix incorrect mac address Hangbin Liu 1 sibling, 1 reply; 4+ messages in thread From: Hangbin Liu @ 2025-02-05 8:03 UTC (permalink / raw) To: netdev Cc: Jay Vosburgh, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Nikolay Aleksandrov, Simon Horman, Jianbo Liu, Boris Pismenny, Tariq Toukan, Shuah Khan, linux-kselftest, linux-kernel, Hangbin Liu In order to receive the neighbor solicitation messages on the backup slave, we should add the NS target's corresponding MAC address. But the target in bonding is a unicast addresses. We can't use it directly. Instead, we should convert it to a Solicited-Node Multicast Address first and then convert the multicast address to the right MAC address. Fixes: 8eb36164d1a6 ("bonding: add ns target multicast address to slave device") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> --- drivers/net/bonding/bond_options.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/bonding/bond_options.c b/drivers/net/bonding/bond_options.c index 327b6ecdc77e..63cf209dcdc9 100644 --- a/drivers/net/bonding/bond_options.c +++ b/drivers/net/bonding/bond_options.c @@ -1246,6 +1246,7 @@ static void slave_set_ns_maddrs(struct bonding *bond, struct slave *slave, bool { struct in6_addr *targets = bond->params.ns_targets; char slot_maddr[MAX_ADDR_LEN]; + struct in6_addr mcaddr; int i; if (!slave_can_set_ns_maddr(bond, slave)) @@ -1255,7 +1256,8 @@ static void slave_set_ns_maddrs(struct bonding *bond, struct slave *slave, bool if (ipv6_addr_any(&targets[i])) break; - if (!ndisc_mc_map(&targets[i], slot_maddr, slave->dev, 0)) { + addrconf_addr_solict_mult(&targets[i], &mcaddr); + if (!ndisc_mc_map(&mcaddr, slot_maddr, slave->dev, 0)) { if (add) dev_mc_add(slave->dev, slot_maddr); else -- 2.39.5 (Apple Git-154) ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH net 1/2] bonding: fix incorrect MAC address setting to receive NA messages 2025-02-05 8:03 ` [PATCH net 1/2] bonding: fix incorrect MAC address setting to receive NA messages Hangbin Liu @ 2025-02-05 12:01 ` Hangbin Liu 0 siblings, 0 replies; 4+ messages in thread From: Hangbin Liu @ 2025-02-05 12:01 UTC (permalink / raw) To: netdev Cc: Jay Vosburgh, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Nikolay Aleksandrov, Simon Horman, Jianbo Liu, Boris Pismenny, Tariq Toukan, Shuah Khan, linux-kselftest, linux-kernel Oh, I just found the subject is incorrect. We want to receive the NS message, not NA message on backup slaves. Thanks Hangbin On Wed, Feb 05, 2025 at 08:03:35AM +0000, Hangbin Liu wrote: > In order to receive the neighbor solicitation messages on the backup slave, > we should add the NS target's corresponding MAC address. But the target in > bonding is a unicast addresses. We can't use it directly. Instead, we should > convert it to a Solicited-Node Multicast Address first and then convert > the multicast address to the right MAC address. > > Fixes: 8eb36164d1a6 ("bonding: add ns target multicast address to slave device") > Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> > --- > drivers/net/bonding/bond_options.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/bonding/bond_options.c b/drivers/net/bonding/bond_options.c > index 327b6ecdc77e..63cf209dcdc9 100644 > --- a/drivers/net/bonding/bond_options.c > +++ b/drivers/net/bonding/bond_options.c > @@ -1246,6 +1246,7 @@ static void slave_set_ns_maddrs(struct bonding *bond, struct slave *slave, bool > { > struct in6_addr *targets = bond->params.ns_targets; > char slot_maddr[MAX_ADDR_LEN]; > + struct in6_addr mcaddr; > int i; > > if (!slave_can_set_ns_maddr(bond, slave)) > @@ -1255,7 +1256,8 @@ static void slave_set_ns_maddrs(struct bonding *bond, struct slave *slave, bool > if (ipv6_addr_any(&targets[i])) > break; > > - if (!ndisc_mc_map(&targets[i], slot_maddr, slave->dev, 0)) { > + addrconf_addr_solict_mult(&targets[i], &mcaddr); > + if (!ndisc_mc_map(&mcaddr, slot_maddr, slave->dev, 0)) { > if (add) > dev_mc_add(slave->dev, slot_maddr); > else > -- > 2.39.5 (Apple Git-154) > ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH net 2/2] selftests: bonding: fix incorrect mac address 2025-02-05 8:03 [PATCH net 0/2] bonding: fix incorrect mac address setting Hangbin Liu 2025-02-05 8:03 ` [PATCH net 1/2] bonding: fix incorrect MAC address setting to receive NA messages Hangbin Liu @ 2025-02-05 8:03 ` Hangbin Liu 1 sibling, 0 replies; 4+ messages in thread From: Hangbin Liu @ 2025-02-05 8:03 UTC (permalink / raw) To: netdev Cc: Jay Vosburgh, Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni, Nikolay Aleksandrov, Simon Horman, Jianbo Liu, Boris Pismenny, Tariq Toukan, Shuah Khan, linux-kselftest, linux-kernel, Hangbin Liu The correct mac address for NS target 2001:db8::254 is 33:33:ff:00:02:54, not 33:33:00:00:02:54. The same with client maddress. Fixes: 86fb6173d11e ("selftests: bonding: add ns multicast group testing") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> --- tools/testing/selftests/drivers/net/bonding/bond_options.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/drivers/net/bonding/bond_options.sh b/tools/testing/selftests/drivers/net/bonding/bond_options.sh index edc56e2cc606..7bc148889ca7 100755 --- a/tools/testing/selftests/drivers/net/bonding/bond_options.sh +++ b/tools/testing/selftests/drivers/net/bonding/bond_options.sh @@ -11,8 +11,8 @@ ALL_TESTS=" lib_dir=$(dirname "$0") source ${lib_dir}/bond_topo_3d1c.sh -c_maddr="33:33:00:00:00:10" -g_maddr="33:33:00:00:02:54" +c_maddr="33:33:ff:00:00:10" +g_maddr="33:33:ff:00:02:54" skip_prio() { -- 2.39.5 (Apple Git-154) ^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-02-05 12:01 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-02-05 8:03 [PATCH net 0/2] bonding: fix incorrect mac address setting Hangbin Liu 2025-02-05 8:03 ` [PATCH net 1/2] bonding: fix incorrect MAC address setting to receive NA messages Hangbin Liu 2025-02-05 12:01 ` Hangbin Liu 2025-02-05 8:03 ` [PATCH net 2/2] selftests: bonding: fix incorrect mac address Hangbin Liu
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.