[RFC net-next Patch v2 0/4] net: bridge: mrp: Add support for Media Redundancy Protocol(MRP)
From: Horatiu Vultur
Date: Mon Jan 13 2020 - 07:47:33 EST
Based on the discussion on the first RFC[1], we have created a new RFC showing
what we were expecting to offload to HW.
This patch series contains the same patches plus another one which adds MRP
support to switchdev. MRP can now offload to HW the process of sending and
terminating MRP_Test frames. But based on the discussions from the previous
version, we decided to try to implement this in user space and extend bridge
netlink interface to be able to offload to HW the creation, sending and the
termination of the MRP_Test frames. Therefor this patch series is more like a
future reference.
We were thinking to extend the bridge netlink in such a way to be able to
offload to HW using switchdev. We were thinking to extend the families IFLA_BR_
and IFLA_BRPORT to add MRP support. Do you think that would be OK? Or should we
create a new family for the MRP?
changes from V2:
- Extend the patch series with another patch. The new patches extends switchdev
interface for MRP. MRP will offload to HW the creating and sending of the
MRP_Test frames.
[1] https://www.spinics.net/lists/netdev/msg623647.html
Horatiu Vultur (4):
net: bridge: mrp: Add support for Media Redundancy Protocol
net: bridge: mrp: Integrate MRP into the bridge
net: bridge: mrp: Add netlink support to configure MRP
net: bridge: mrp: switchdev: Add HW offload
include/net/switchdev.h | 52 ++
include/uapi/linux/if_bridge.h | 27 +
include/uapi/linux/if_ether.h | 1 +
include/uapi/linux/rtnetlink.h | 7 +
net/bridge/Kconfig | 12 +
net/bridge/Makefile | 2 +
net/bridge/br.c | 19 +
net/bridge/br_device.c | 3 +
net/bridge/br_forward.c | 1 +
net/bridge/br_if.c | 10 +
net/bridge/br_input.c | 22 +
net/bridge/br_mrp.c | 1543 ++++++++++++++++++++++++++++++++
net/bridge/br_mrp_switchdev.c | 180 ++++
net/bridge/br_mrp_timer.c | 258 ++++++
net/bridge/br_netlink.c | 9 +
net/bridge/br_private.h | 30 +
net/bridge/br_private_mrp.h | 224 +++++
security/selinux/nlmsgtab.c | 5 +-
18 files changed, 2404 insertions(+), 1 deletion(-)
create mode 100644 net/bridge/br_mrp.c
create mode 100644 net/bridge/br_mrp_switchdev.c
create mode 100644 net/bridge/br_mrp_timer.c
create mode 100644 net/bridge/br_private_mrp.h
--
2.17.1