[Bridge] [PATCH net-next v5 09/10] bridge: cfm: Netlink GET status Interface.

Nikolay Aleksandrov nikolay at nvidia.com
Wed Oct 14 11:24:38 UTC 2020


On Mon, 2020-10-12 at 14:04 +0000, Henrik Bjoernlund wrote:
> This is the implementation of CFM netlink status
> get information interface.
> 
> Add new nested netlink attributes. These attributes are used by the
> user space to get status information.
> 
> GETLINK:
>     Request filter RTEXT_FILTER_CFM_STATUS:
>     Indicating that CFM status information must be delivered.
> 
>     IFLA_BRIDGE_CFM:
>         Points to the CFM information.
> 
>     IFLA_BRIDGE_CFM_MEP_STATUS_INFO:
>         This indicate that the MEP instance status are following.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_INFO:
>         This indicate that the peer MEP status are following.
> 
> CFM nested attribute has the following attributes in next level.
> 
> GETLINK RTEXT_FILTER_CFM_STATUS:
>     IFLA_BRIDGE_CFM_MEP_STATUS_INSTANCE:
>         The MEP instance number of the delivered status.
>         The type is u32.
>     IFLA_BRIDGE_CFM_MEP_STATUS_OPCODE_UNEXP_SEEN:
>         The MEP instance received CFM PDU with unexpected Opcode.
>         The type is u32 (bool).
>     IFLA_BRIDGE_CFM_MEP_STATUS_VERSION_UNEXP_SEEN:
>         The MEP instance received CFM PDU with unexpected version.
>         The type is u32 (bool).
>     IFLA_BRIDGE_CFM_MEP_STATUS_RX_LEVEL_LOW_SEEN:
>         The MEP instance received CCM PDU with MD level lower than
>         configured level. This frame is discarded.
>         The type is u32 (bool).
> 
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_INSTANCE:
>         The MEP instance number of the delivered status.
>         The type is u32.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_PEER_MEPID:
>         The added Peer MEP ID of the delivered status.
>         The type is u32.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_CCM_DEFECT:
>         The CCM defect status.
>         The type is u32 (bool).
>         True means no CCM frame is received for 3.25 intervals.
>         IFLA_BRIDGE_CFM_CC_CONFIG_EXP_INTERVAL.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_RDI:
>         The last received CCM PDU RDI.
>         The type is u32 (bool).
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_PORT_TLV_VALUE:
>         The last received CCM PDU Port Status TLV value field.
>         The type is u8.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_IF_TLV_VALUE:
>         The last received CCM PDU Interface Status TLV value field.
>         The type is u8.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_SEEN:
>         A CCM frame has been received from Peer MEP.
>         The type is u32 (bool).
>         This is cleared after GETLINK IFLA_BRIDGE_CFM_CC_PEER_STATUS_INFO.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_TLV_SEEN:
>         A CCM frame with TLV has been received from Peer MEP.
>         The type is u32 (bool).
>         This is cleared after GETLINK IFLA_BRIDGE_CFM_CC_PEER_STATUS_INFO.
>     IFLA_BRIDGE_CFM_CC_PEER_STATUS_SEQ_UNEXP_SEEN:
>         A CCM frame with unexpected sequence number has been received
>         from Peer MEP.
>         The type is u32 (bool).
>         When a sequence number is not one higher than previously received
>         then it is unexpected.
>         This is cleared after GETLINK IFLA_BRIDGE_CFM_CC_PEER_STATUS_INFO.
> 
> Signed-off-by: Henrik Bjoernlund  <henrik.bjoernlund at microchip.com>
> Reviewed-by: Horatiu Vultur  <horatiu.vultur at microchip.com>
> ---
>  include/uapi/linux/if_bridge.h |  29 +++++++++
>  include/uapi/linux/rtnetlink.h |   1 +
>  net/bridge/br_cfm_netlink.c    | 105 +++++++++++++++++++++++++++++++++
>  net/bridge/br_netlink.c        |  16 ++++-
>  net/bridge/br_private.h        |   6 ++
>  5 files changed, 154 insertions(+), 3 deletions(-)
> 
> 

Acked-by: Nikolay Aleksandrov <nikolay at nvidia.com>




More information about the Bridge mailing list