diff options
author | Nikolay Aleksandrov <nikolay@cumulusnetworks.com> | 2017-04-14 12:49:34 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-04-17 19:45:34 +0200 |
commit | cab93af0ed6a12b63ebf0ebca37e6d8efd399114 (patch) | |
tree | f06321abb51d03e36218c6a73202133c45404f7d /net/bridge/br_fdb.c | |
parent | kcm: remove a useless copy_from_user() (diff) | |
download | linux-cab93af0ed6a12b63ebf0ebca37e6d8efd399114.tar.xz linux-cab93af0ed6a12b63ebf0ebca37e6d8efd399114.zip |
net: bridge: notify on hw fdb takeover
Recently we added support for SW fdbs to take over HW ones, but that
results in changing a user-visible fdb flag thus we need to send a
notification, also it's consistent with how HW takes over SW entries.
Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge/br_fdb.c')
-rw-r--r-- | net/bridge/br_fdb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c index 5a40a87c4f4f..de7988b0349e 100644 --- a/net/bridge/br_fdb.c +++ b/net/bridge/br_fdb.c @@ -595,8 +595,10 @@ void br_fdb_update(struct net_bridge *br, struct net_bridge_port *source, if (unlikely(added_by_user)) fdb->added_by_user = 1; /* Take over HW learned entry */ - if (unlikely(fdb->added_by_external_learn)) + if (unlikely(fdb->added_by_external_learn)) { fdb->added_by_external_learn = 0; + fdb_modified = true; + } if (unlikely(fdb_modified)) fdb_notify(br, fdb, RTM_NEWNEIGH); } |