netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next v1 0/2] bonding: Extend arp_ip_target format to allow for a list of vlan tags.
@ 2025-05-08 18:29 David J Wilder
  2025-05-08 18:29 ` [PATCH net-next v1 1/2] bonding: Adding struct arp_target David J Wilder
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: David J Wilder @ 2025-05-08 18:29 UTC (permalink / raw)
  To: netdev; +Cc: jv, wilder, pradeeps, pradeep, i.maximets, amorenoz, haliu

This is a followup to this discussion:
  https://www.spinics.net/lists/netdev/msg1085428.html

The current implementation of the arp monitor builds a list of vlan-tags by
following the chain of net_devices above the bond. See: bond_verify_device_path().
Unfortunately with some configurations this is not possible. One example is
when an ovs switch is configured above the bond.

This change extends the "arp_ip_target" parameter format to allow for a list of
vlan tags to be included for each arp target. This new list of tags is optional
and may be omitted to preserve the current format and process of gathering tags.
When provided the list of tags circumvents the process of gathering tags by
using the supplied list. An empty list can be provided to simply skip the the
process of gathering tags.

The purposed new format for arp_ip_target is:
arp_ip_target=ipv4-address[vlan-tag\...],...

Examples:
arp_ip_target=10.0.0.1,10.0.0.2 (Determine tags automatically for both targets)
arp_ip_target=10.0.0.1[]        (Don't add any tags, don't gather tags)
arp_ip_target=10.0.0.1[100/200] (Don't gather tags, use supplied list of tags)
arp_ip_target=10.0.0.1,10.0.0.2[100] (add vlan 100 tag for 10.0.0.2.
                                      Gather tags for 10.0.0.1.)

This is a work in process. I am requesting feedback on my approach.
This patch allows the extended format only when setting arp_ip_target values with
modules parameters.

TBD: Add support for sysfs, netlink and procfs.
TBD: Kernel self tests.
TBD: Documentation.

David J Wilder (2):
  bonding: Adding struct arp_target
  bonding: Extend arp_ip_target format to allow for a list of vlan tags.

 drivers/net/bonding/bond_main.c    | 163 ++++++++++++++++++++++++-----
 drivers/net/bonding/bond_netlink.c |   4 +-
 drivers/net/bonding/bond_options.c |  18 ++--
 drivers/net/bonding/bond_procfs.c  |   4 +-
 drivers/net/bonding/bond_sysfs.c   |   4 +-
 include/net/bonding.h              |  15 ++-
 6 files changed, 161 insertions(+), 47 deletions(-)

-- 
2.43.5


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-05-12 23:54 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-08 18:29 [PATCH net-next v1 0/2] bonding: Extend arp_ip_target format to allow for a list of vlan tags David J Wilder
2025-05-08 18:29 ` [PATCH net-next v1 1/2] bonding: Adding struct arp_target David J Wilder
2025-05-10 13:16   ` Jay Vosburgh
2025-05-08 18:29 ` [PATCH net-next v1 2/2] bonding: Extend arp_ip_target format to allow for a list of vlan tags David J Wilder
2025-05-10  0:42   ` Jakub Kicinski
2025-05-10 21:06   ` kernel test robot
2025-05-12  4:20 ` [PATCH net-next v1 0/2] " Hangbin Liu
2025-05-12 23:54   ` David Wilder

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).