mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
net: bridge: fdb: use the entry key in __fdb_update
The address and VLAN ID passed to __fdb_update() match the key of the entry just found, so we can just use it. Signed-off-by: Nikolay Aleksandrov <razor@blackwall.org> Reviewed-by: Ido Schimmel <idosch@nvidia.com> Link: https://patch.msgid.link/20261005143937.877466-7-razor@blackwall.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
d65082c8bf
commit
8f8a20dc7b
|
|
@ -1000,7 +1000,6 @@ static void __fdb_update(struct net_bridge *br,
|
|||
struct net_bridge_fdb_entry *fdb,
|
||||
struct net_bridge_port *source,
|
||||
struct net_bridge_dst dst,
|
||||
const unsigned char *addr, u16 vid,
|
||||
unsigned long flags)
|
||||
{
|
||||
struct net_bridge_port *old_port;
|
||||
|
|
@ -1012,7 +1011,8 @@ static void __fdb_update(struct net_bridge *br,
|
|||
if (unlikely(test_bit(BR_FDB_LOCAL, &fdb->flags))) {
|
||||
if (net_ratelimit())
|
||||
br_warn(br, "received packet on %s with own address as source address (addr:%pM, vlan:%u)\n",
|
||||
source->dev->name, addr, vid);
|
||||
source->dev->name, fdb->key.addr.addr,
|
||||
fdb->key.vlan_id);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1055,7 +1055,8 @@ static void __fdb_update(struct net_bridge *br,
|
|||
}
|
||||
|
||||
if (unlikely(fdb_modified)) {
|
||||
trace_br_fdb_update(br, source, addr, vid, flags);
|
||||
trace_br_fdb_update(br, source, fdb->key.addr.addr,
|
||||
fdb->key.vlan_id, flags);
|
||||
fdb_notify(br, fdb, RTM_NEWNEIGH, true);
|
||||
}
|
||||
}
|
||||
|
|
@ -1075,7 +1076,7 @@ void br_fdb_update(struct net_bridge *br, struct net_bridge_port *source,
|
|||
|
||||
fdb = fdb_find_rcu(&br->fdb_hash_tbl, addr, vid);
|
||||
if (likely(fdb)) {
|
||||
__fdb_update(br, fdb, source, dst, addr, vid, flags);
|
||||
__fdb_update(br, fdb, source, dst, flags);
|
||||
} else {
|
||||
spin_lock(&br->hash_lock);
|
||||
fdb = fdb_create(br, dst, addr, vid, flags);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user