netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/5] bonding: add IPv6 NS/NA monitor support
@ 2022-02-16  8:08 Hangbin Liu
  2022-02-16  8:08 ` [PATCH net-next 1/5] ipv6: separate ndisc_ns_create() from ndisc_send_ns() Hangbin Liu
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Hangbin Liu @ 2022-02-16  8:08 UTC (permalink / raw)
  To: netdev
  Cc: Jay Vosburgh, Veaceslav Falico, Andy Gospodarek,
	David S . Miller, Jakub Kicinski, David Ahern,
	Nikolay Aleksandrov, Jonathan Toppins, Hangbin Liu

This patch is for adding IPv6 NS/NA monitor support for bonding. I
posted a RFC patch before[1]. And the iproute2 patch is here [2].
Based on Nikolay's suggestion on RFC patch, I did

1. define BOND_MAX_ND_TARGETS as BOND_MAX_ARP_TARGETS
2. adjust for reverse xmas tree ordering of local variables
3. remove bond_do_ns_validate()
4. add extra field for bond_opt_value
5. set IS_ENABLED(CONFIG_IPV6) for IPv6 codes

---

This patch add bond IPv6 NS/NA monitor support. A new option
ns_ip6_target is added, which is similar with arp_ip_target.
The IPv6 NS/NA monitor will take effect when there is a valid IPv6
address. Both ARP monitor and NS monitor will working at the same time.

A new extra storage field is added to struct bond_opt_value for IPv6 support.

Function bond_handle_vlan() is split from bond_arp_send() for both
IPv4/IPv6 usage.

To alloc NS message and send out. ndisc_ns_create() and ndisc_send_skb()
are exported.

[1] https://lore.kernel.org/netdev/20220126073521.1313870-1-liuhangbin@gmail.com
[2] https://lore.kernel.org/netdev/20211124071854.1400032-2-liuhangbin@gmail.com

Hangbin Liu (5):
  ipv6: separate ndisc_ns_create() from ndisc_send_ns()
  Bonding: split bond_handle_vlan from bond_arp_send
  bonding: add extra field for bond_opt_value
  bonding: add new parameter ns_targets
  bonding: add new option ns_ip6_target

 Documentation/networking/bonding.rst |  11 +
 drivers/net/bonding/bond_main.c      | 295 +++++++++++++++++++++++----
 drivers/net/bonding/bond_netlink.c   |  59 ++++++
 drivers/net/bonding/bond_options.c   | 140 ++++++++++++-
 drivers/net/bonding/bond_sysfs.c     |  26 +++
 include/net/bond_options.h           |  31 ++-
 include/net/bonding.h                |  26 ++-
 include/net/ndisc.h                  |   5 +
 include/uapi/linux/if_link.h         |   1 +
 net/ipv6/ndisc.c                     |  49 +++--
 tools/include/uapi/linux/if_link.h   |   1 +
 11 files changed, 573 insertions(+), 71 deletions(-)

-- 
2.31.1


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

end of thread, other threads:[~2022-02-17 18:00 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-16  8:08 [PATCH net-next 0/5] bonding: add IPv6 NS/NA monitor support Hangbin Liu
2022-02-16  8:08 ` [PATCH net-next 1/5] ipv6: separate ndisc_ns_create() from ndisc_send_ns() Hangbin Liu
2022-02-16  8:08 ` [PATCH net-next 2/5] Bonding: split bond_handle_vlan from bond_arp_send Hangbin Liu
2022-02-16  8:08 ` [PATCH net-next 3/5] bonding: add extra field for bond_opt_value Hangbin Liu
2022-02-16  8:08 ` [PATCH net-next 4/5] bonding: add new parameter ns_targets Hangbin Liu
2022-02-16  8:08 ` [PATCH net-next 5/5] bonding: add new option ns_ip6_target Hangbin Liu
2022-02-16 17:38   ` Eric Dumazet
2022-02-17  1:25     ` Hangbin Liu
2022-02-17  1:36       ` David Ahern
2022-02-17  4:26         ` Jay Vosburgh
2022-02-17 14:21           ` Jonathan Toppins
2022-02-17 18:00             ` Jay Vosburgh

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).