Commit 89024826 authored by Vivien Didelot's avatar Vivien Didelot Committed by David S. Miller

net: switchdev: support static FDB addresses

This patch adds a is_static boolean to the switchdev_obj_fdb structure,
in order to set the ndm_state to either NUD_NOARP or NUD_REACHABLE.
Signed-off-by: default avatarVivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1525c386
...@@ -72,6 +72,7 @@ struct switchdev_obj { ...@@ -72,6 +72,7 @@ struct switchdev_obj {
struct switchdev_obj_fdb { /* PORT_FDB */ struct switchdev_obj_fdb { /* PORT_FDB */
u8 addr[ETH_ALEN]; u8 addr[ETH_ALEN];
u16 vid; u16 vid;
bool is_static;
} fdb; } fdb;
} u; } u;
}; };
......
...@@ -811,7 +811,7 @@ static int switchdev_port_fdb_dump_cb(struct net_device *dev, ...@@ -811,7 +811,7 @@ static int switchdev_port_fdb_dump_cb(struct net_device *dev,
ndm->ndm_flags = NTF_SELF; ndm->ndm_flags = NTF_SELF;
ndm->ndm_type = 0; ndm->ndm_type = 0;
ndm->ndm_ifindex = dev->ifindex; ndm->ndm_ifindex = dev->ifindex;
ndm->ndm_state = NUD_REACHABLE; ndm->ndm_state = obj->u.fdb.is_static ? NUD_NOARP : NUD_REACHABLE;
if (nla_put(dump->skb, NDA_LLADDR, ETH_ALEN, obj->u.fdb.addr)) if (nla_put(dump->skb, NDA_LLADDR, ETH_ALEN, obj->u.fdb.addr))
goto nla_put_failure; goto nla_put_failure;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment