diff options
Diffstat (limited to 'net/bridge/br_fdb.c')
-rw-r--r-- | net/bridge/br_fdb.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c index 26637439965b..6818e609b2c0 100644 --- a/net/bridge/br_fdb.c +++ b/net/bridge/br_fdb.c | |||
@@ -242,11 +242,11 @@ int br_fdb_test_addr(struct net_device *dev, unsigned char *addr) | |||
242 | struct net_bridge_fdb_entry *fdb; | 242 | struct net_bridge_fdb_entry *fdb; |
243 | int ret; | 243 | int ret; |
244 | 244 | ||
245 | if (!dev->br_port) | 245 | if (!br_port_exists(dev)) |
246 | return 0; | 246 | return 0; |
247 | 247 | ||
248 | rcu_read_lock(); | 248 | rcu_read_lock(); |
249 | fdb = __br_fdb_get(dev->br_port->br, addr); | 249 | fdb = __br_fdb_get(br_port_get_rcu(dev)->br, addr); |
250 | ret = fdb && fdb->dst->dev != dev && | 250 | ret = fdb && fdb->dst->dev != dev && |
251 | fdb->dst->state == BR_STATE_FORWARDING; | 251 | fdb->dst->state == BR_STATE_FORWARDING; |
252 | rcu_read_unlock(); | 252 | rcu_read_unlock(); |