Home
last modified time | relevance | path

Searched full:fdb (Results 1 – 25 of 144) sorted by relevance

123456

/linux/tools/testing/selftests/net/forwarding/
H A Dbridge_locked_port.sh105 check_fail $? "Ping worked after locking port, but before adding FDB entry"
107 bridge fdb add `mac_get $h1` dev $swp1 master static
110 check_err $? "Ping did not work after locking port and adding FDB entry"
113 bridge fdb del `mac_get $h1` dev $swp1 master static
116 check_err $? "Ping did not work after unlocking port and removing FDB entry."
135 check_fail $? "Ping through vlan worked after locking port, but before adding FDB entry"
137 bridge fdb add `mac_get $h1` dev $swp1 vlan 100 master static
140 check_err $? "Ping through vlan did not work after locking port and adding FDB entry"
143 bridge fdb del `mac_get $h1` dev $swp1 vlan 100 master static
146 check_err $? "Ping through vlan did not work after unlocking port and removing FDB entry"
[all …]
H A Dbridge_fdb_learning_limit.sh113 bridge -j fdb show br br0 | \
128 bridge fdb flush dev br0
132 bridge fdb add "$H1_DEFAULT_MAC" dev "$swp1" master static use
143 # code finished and the FDB entry was created.
152 bridge fdb replace "$mac" dev "$swp1" master static
155 bridge fdb replace "$mac" dev "$swp1" master static use
158 bridge fdb replace "$mac" dev "$swp1" master extern_learn
162 check_err $? "Failed to add a FDB entry of type ${type}"
174 bridge fdb del "$mac" dev "$swp1" master
178 check_err $? "Failed to remove a FDB entry of type ${type}"
[all …]
H A Dvxlan_bridge_1q.sh190 bridge fdb append dev vx10 00:00:00:00:00:00 dst 192.0.2.34 self
191 bridge fdb append dev vx10 00:00:00:00:00:00 dst 192.0.2.50 self
193 bridge fdb append dev vx20 00:00:00:00:00:00 dst 192.0.2.34 self
194 bridge fdb append dev vx20 00:00:00:00:00:00 dst 192.0.2.50 self
199 bridge fdb del dev vx20 00:00:00:00:00:00 dst 192.0.2.50 self
200 bridge fdb del dev vx20 00:00:00:00:00:00 dst 192.0.2.34 self
202 bridge fdb del dev vx10 00:00:00:00:00:00 dst 192.0.2.50 self
203 bridge fdb del dev vx10 00:00:00:00:00:00 dst 192.0.2.34 self
277 bridge fdb append dev vx10 00:00:00:00:00:00 dst 192.0.2.17 self
278 bridge fdb append dev vx10 00:00:00:00:00:00 dst $other_in_addr self
[all …]
H A Dbridge_vlan_aware.sh118 # Test that externally learned FDB entries can roam, but not age out
121 bridge fdb add de:ad:be:ef:13:37 dev $swp1 master extern_learn vlan 1
123 bridge fdb show brport $swp1 | grep -q de:ad:be:ef:13:37
124 check_err $? "Did not find FDB entry when should"
126 # Wait for 10 seconds after the ageing time to make sure the FDB entry
131 bridge fdb show brport $swp1 | grep -q de:ad:be:ef:13:37
132 check_err $? "FDB entry was aged out when should not"
136 bridge fdb show brport $swp2 | grep -q de:ad:be:ef:13:37
137 check_err $? "FDB entry did not roam when should"
139 log_test "Externally learned FDB entry - ageing & roaming"
[all …]
H A Dvxlan_bridge_1d.sh148 bridge fdb append dev vx1 00:00:00:00:00:00 dst 192.0.2.34 self
149 bridge fdb append dev vx1 00:00:00:00:00:00 dst 192.0.2.50 self
157 bridge fdb del dev vx1 00:00:00:00:00:00 dst 192.0.2.50 self
158 bridge fdb del dev vx1 00:00:00:00:00:00 dst 192.0.2.34 self
212 bridge fdb append dev vx2 00:00:00:00:00:00 dst 192.0.2.17 self
213 bridge fdb append dev vx2 00:00:00:00:00:00 dst $other_in_addr self
308 bridge fdb del dev vx1 00:00:00:00:00:00 dst 192.0.2.50 self
309 bridge fdb del dev vx1 00:00:00:00:00:00 dst 192.0.2.34 self
315 bridge fdb append dev vx1 00:00:00:00:00:00 dst 192.0.2.34 self
316 bridge fdb append dev vx1 00:00:00:00:00:00 dst 192.0.2.50 self
[all …]
H A Dbridge_sticky_fdb.sh51 bridge fdb add $TEST_MAC dev $swp1 master static sticky
52 check_err $? "Could not add fdb entry"
53 bridge fdb del $TEST_MAC dev $swp1 vlan 1 master static sticky
55 bridge -j fdb show br br0 brport $swp1\
57 check_err $? "Did not find FDB record when should"
59 log_test "Sticky fdb entry"
/linux/tools/testing/selftests/net/
H A Dfdb_flush.sh4 # This test is for checking functionality of flushing FDB entries.
99 $BRIDGE fdb add $mac dev $dev $args
110 $BRIDGE fdb add $mac dev $dev $args
120 local entries=$($BRIDGE fdb show dev $dev | grep "$filter" | wc -l)
125 log_test $rc 0 "$dev: Expected $exp_entries FDB entries, got $entries"
140 run_cmd "$BRIDGE fdb flush dev vx10"
141 log_test $? 0 "Flush FDB by dev vx10"
144 log_test $? 0 "Flush FDB by dev vx10 - test vx10 entries"
147 log_test $? 0 "Flush FDB by dev vx10 - test vx20 entries"
162 run_cmd "$BRIDGE fdb flus
[all...]
H A Dfib_nexthops.sh430 $IP nexthop help 2>&1 | grep -q fdb
432 echo "SKIP: iproute2 too old, missing fdb nexthop support"
460 echo "IPv6 fdb groups functional"
469 run_cmd "$IP nexthop add id 61 via 2001:db8:91::2 fdb"
470 run_cmd "$IP nexthop add id 62 via 2001:db8:91::3 fdb"
471 run_cmd "$IP nexthop add id 102 group 61/62 fdb"
472 check_nexthop "id 102" "id 102 group 61/62 fdb"
473 log_test $? 0 "Fdb Nexthop group with multiple nexthops"
477 check_nexthop "id 102" "id 102 group 61/62 fdb"
478 log_test $? 0 "Get Fdb nexthop group by id"
[all …]
H A Dtest_vxlan_nh.sh81 # both the FDB nexthop group and the egress device.
90 run_cmd "ip -n $ns1 nexthop add id 1 via $remote_addr fdb"
91 run_cmd "ip -n $ns1 nexthop add id 10 group 1 fdb"
94 run_cmd "bridge -n $ns1 fdb add 00:11:22:33:44:55 dev vx0 self static nhid 10"
99 check_err $? "FDB nexthop group stats did not increase"
104 # Add a second FDB nexthop group whose nexthop carries a per-nexthop
112 run_cmd "ip -n $ns1 nexthop add id 2 via $remote_addr fdb dst_port 4790"
113 run_cmd "ip -n $ns1 nexthop add id 20 group 2 fdb"
115 run_cmd "bridge -n $ns1 fdb add 00:11:22:33:44:66 dev vx0 \
123 check_err $? "FDB nexthop group stats did not increase (with port)"
[all …]
H A Dtest_bridge_backup_port.sh230 run_cmd "bridge -n $sw1 fdb replace $dmac dev swp1 master static vlan 10"
349 run_cmd "ip -n $sw1 nexthop replace id 1 via 192.0.2.34 fdb"
350 run_cmd "ip -n $sw1 nexthop replace id 2 via 192.0.2.34 fdb"
351 run_cmd "ip -n $sw1 nexthop replace id 10 group 1/2 fdb"
353 run_cmd "bridge -n $sw1 fdb replace $dmac dev swp1 master static vlan 10"
354 run_cmd "bridge -n $sw1 fdb replace $dmac dev vx0 self static dst 192.0.2.36 src_vni 10010"
360 # regular VXLAN FDB entry.
368 # that they are forwarded by the VXLAN FDB entry.
391 log_test $? 0 "Forwarding using VXLAN FDB entry"
422 log_test $? 0 "No forwarding using VXLAN FDB entr
[all...]
/linux/tools/testing/selftests/drivers/net/mlxsw/
H A Dvxlan_fdb_veto.sh4 # Test vetoing of FDB entries that mlxsw can not offload. This exercises several
67 bridge fdb add 01:02:03:04:05:06 dev vxlan0 self static \
71 bridge fdb add 01:02:03:04:05:06 dev vxlan0 self static \
75 log_test "vxlan FDB veto - create"
82 bridge fdb add 00:01:02:03:04:05 dev vxlan0 self static \
84 check_err $? "valid FDB rejected"
86 bridge fdb replace 00:01:02:03:04:05 dev vxlan0 self static \
88 check_fail $? "FDB with an explicit port not rejected"
90 bridge fdb replace 00:01:02:03:04:05 dev vxlan0 self static \
93 check_err $? "FDB with an explicit port rejected without extack"
[all …]
H A Dvxlan.sh483 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self dst $LOCAL_IP_2
486 bridge fdb show brport vxlan0
489 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self
498 bridge fdb add de:ad:be:ef:13:37 dev vxlan0 self master static \
502 de:ad:be:ef:13:37 self bridge fdb show brport vxlan0
505 de:ad:be:ef:13:37 self -v bridge fdb show brport vxlan0
510 # Remove FDB entry from the bridge driver and check that corresponding
514 bridge fdb del de:ad:be:ef:13:37 dev vxlan0 master
516 de:ad:be:ef:13:37 self bridge fdb show brport vxlan0
521 # Add the FDB entry back to the bridge driver and make sure it is
[all …]
H A Dvxlan_flooding.sh164 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self \
238 # Add FDB entries for remote VTEPs and corresponding tc filters on the
255 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.8
256 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.9
257 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.10
267 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.2
268 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.3
269 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.4
279 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.11
280 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.12
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/
H A Dvporttbl.c19 struct mlx5_flow_table *fdb; member
37 struct mlx5_flow_table *fdb; in esw_vport_tbl_create() local
46 fdb = mlx5_create_auto_grouped_flow_table(ns, &ft_attr); in esw_vport_tbl_create()
47 if (IS_ERR(fdb)) { in esw_vport_tbl_create()
48 esw_warn(esw->dev, "Failed to create per vport FDB Table err %pe\n", in esw_vport_tbl_create()
49 fdb); in esw_vport_tbl_create()
52 return fdb; in esw_vport_tbl_create()
85 struct mlx5_flow_table *fdb; in mlx5_esw_vporttbl_get() local
101 fdb = ERR_PTR(-ENOMEM); in mlx5_esw_vporttbl_get()
107 esw_warn(dev, "Failed to get FDB namespace\n"); in mlx5_esw_vporttbl_get()
[all …]
H A Dlegacy.c27 struct mlx5_flow_table *fdb; in esw_create_legacy_vepa_table() local
32 esw_warn(dev, "Failed to get FDB flow namespace\n"); in esw_create_legacy_vepa_table()
40 fdb = mlx5_create_auto_grouped_flow_table(root_ns, &ft_attr); in esw_create_legacy_vepa_table()
41 if (IS_ERR(fdb)) { in esw_create_legacy_vepa_table()
42 err = PTR_ERR(fdb); in esw_create_legacy_vepa_table()
43 esw_warn(dev, "Failed to create VEPA FDB err %d\n", err); in esw_create_legacy_vepa_table()
46 esw->fdb_table.legacy.vepa_fdb = fdb; in esw_create_legacy_vepa_table()
53 esw_debug(esw->dev, "Destroy FDB Table\n"); in esw_destroy_legacy_fdb_table()
54 if (!esw->fdb_table.legacy.fdb) in esw_destroy_legacy_fdb_table()
63 mlx5_destroy_flow_table(esw->fdb_table.legacy.fdb); in esw_destroy_legacy_fdb_table()
[all …]
/linux/drivers/net/ethernet/ti/icssm/
H A Dicssm_prueth_switch.c307 icssm_prueth_sw_find_fdb_insert(struct fdb_tbl *fdb, struct prueth *prueth, in icssm_prueth_sw_find_fdb_insert() argument
311 struct fdb_mac_tbl_array __iomem *mac_tbl = fdb->mac_tbl_a; in icssm_prueth_sw_find_fdb_insert()
329 /* MAC is already in FDB, only port is in icssm_prueth_sw_find_fdb_insert()
337 /* MAC and port are the same, touch the fdb */ in icssm_prueth_sw_find_fdb_insert()
445 struct fdb_tbl *fdb; in icssm_prueth_sw_find_free_mac() local
448 fdb = prueth->fdb_tbl; in icssm_prueth_sw_find_free_mac()
449 mt = fdb->mac_tbl_a; in icssm_prueth_sw_find_free_mac()
460 if (fdb->total_entries == FDB_MAC_TBL_MAX_ENTRIES) in icssm_prueth_sw_find_free_mac()
536 struct fdb_tbl *fdb; in icssm_prueth_sw_insert_fdb_entry() local
542 fdb = prueth->fdb_tbl; in icssm_prueth_sw_insert_fdb_entry()
[all …]
H A Dicssm_switchdev.c91 * icssm_sw_event_work - insert/delete fdb entry
101 struct switchdev_notifier_fdb_info *fdb; in icssm_sw_event_work() local
113 fdb = &switchdev_work->fdb_info; in icssm_sw_event_work()
115 "prueth fdb add: MACID = %pM vid = %u flags = %u -- port %d\n", in icssm_sw_event_work()
116 fdb->addr, fdb->vid, fdb->added_by_user, port); in icssm_sw_event_work()
118 if (!fdb->added_by_user) in icssm_sw_event_work()
121 if (fdb->is_local) in icssm_sw_event_work()
124 icssm_prueth_sw_fdb_add(emac, fdb); in icssm_sw_event_work()
125 icssm_prueth_sw_fdb_offload(emac->ndev, fdb); in icssm_sw_event_work()
128 fdb = &switchdev_work->fdb_info; in icssm_sw_event_work()
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/diag/
H A Dbridge_tracepoint.h14 TP_PROTO(const struct mlx5_esw_bridge_fdb_entry *fdb),
15 TP_ARGS(fdb),
25 netdev_name(fdb->dev),
27 memcpy(__entry->addr, fdb->key.addr, ETH_ALEN);
28 __entry->vid = fdb->key.vid;
29 __entry->flags = fdb->flags;
30 __entry->used = jiffies_to_msecs(jiffies - fdb->lastuse)
42 TP_PROTO(const struct mlx5_esw_bridge_fdb_entry *fdb),
43 TP_ARGS(fdb)
47 TP_PROTO(const struct mlx5_esw_bridge_fdb_entry *fdb),
[all …]
/linux/Documentation/networking/dsa/
H A Dconfiguration.rst299 Forwarding database (FDB) management
303 the software FDB of the bridge in sync with the hardware tables, so the two
304 tables are managed separately (``bridge fdb show`` queries both, and depending
305 on whether the ``self`` or ``master`` flags are being used, a ``bridge fdb
306 add`` or ``bridge fdb del`` command acts upon entries from one or both tables).
308 Up until kernel v4.14, DSA only supported user space management of bridge FDB
310 FDB, just the hardware one) using the ``self`` flag (which is optional and can
315 bridge fdb add dev swp0 00:01:02:03:04:05 self static
317 bridge fdb add dev swp0 00:01:02:03:04:05 static
319 Due to a bug, the bridge bypass FDB implementation provided by DSA did not
[all …]
/linux/drivers/net/ethernet/ti/
H A Dcpsw_switchdev.c381 struct switchdev_notifier_fdb_info *fdb; in cpsw_switchdev_event_work() local
388 fdb = &switchdev_work->fdb_info; in cpsw_switchdev_event_work()
391 fdb->addr, fdb->vid, fdb->added_by_user, in cpsw_switchdev_event_work()
392 fdb->offloaded, port); in cpsw_switchdev_event_work()
394 if (!fdb->added_by_user || fdb->is_local) in cpsw_switchdev_event_work()
396 if (memcmp(priv->mac_addr, (u8 *)fdb->addr, ETH_ALEN) == 0) in cpsw_switchdev_event_work()
399 cpsw_ale_add_ucast(cpsw->ale, (u8 *)fdb->addr, port, in cpsw_switchdev_event_work()
400 fdb->vid ? ALE_VLAN : 0, fdb->vid); in cpsw_switchdev_event_work()
401 cpsw_fdb_offload_notify(priv->ndev, fdb); in cpsw_switchdev_event_work()
404 fdb = &switchdev_work->fdb_info; in cpsw_switchdev_event_work()
[all …]
H A Dam65-cpsw-switchdev.c371 struct switchdev_notifier_fdb_info *fdb; in am65_cpsw_switchdev_event_work() local
378 fdb = &switchdev_work->fdb_info; in am65_cpsw_switchdev_event_work()
381 fdb->addr, fdb->vid, fdb->added_by_user, in am65_cpsw_switchdev_event_work()
382 fdb->offloaded, port_id); in am65_cpsw_switchdev_event_work()
384 if (!fdb->added_by_user || fdb->is_local) in am65_cpsw_switchdev_event_work()
386 if (memcmp(port->slave.mac_addr, (u8 *)fdb->addr, ETH_ALEN) == 0) in am65_cpsw_switchdev_event_work()
389 cpsw_ale_add_ucast(cpsw->ale, (u8 *)fdb->addr, port_id, in am65_cpsw_switchdev_event_work()
390 fdb->vid ? ALE_VLAN : 0, fdb->vid); in am65_cpsw_switchdev_event_work()
391 am65_cpsw_fdb_offload_notify(port->ndev, fdb); in am65_cpsw_switchdev_event_work()
394 fdb = &switchdev_work->fdb_info; in am65_cpsw_switchdev_event_work()
[all …]
/linux/drivers/net/ethernet/ti/icssg/
H A Dicssg_switchdev.c130 struct switchdev_notifier_fdb_info *fdb; in prueth_switchdev_event_work() local
137 fdb = &switchdev_work->fdb_info; in prueth_switchdev_event_work()
140 fdb->addr, fdb->vid, fdb->added_by_user, in prueth_switchdev_event_work()
141 fdb->offloaded, port_id); in prueth_switchdev_event_work()
143 if (!fdb->added_by_user) in prueth_switchdev_event_work()
145 if (!ether_addr_equal(emac->mac_addr, fdb->addr)) in prueth_switchdev_event_work()
148 ret = icssg_fdb_add_del(emac, fdb->addr, fdb->vid, in prueth_switchdev_event_work()
151 prueth_switchdev_fdb_offload_notify(emac->ndev, fdb); in prueth_switchdev_event_work()
154 fdb = &switchdev_work->fdb_info; in prueth_switchdev_event_work()
157 fdb->addr, fdb->vid, fdb->added_by_user, in prueth_switchdev_event_work()
[all …]
/linux/tools/testing/selftests/drivers/net/mlxsw/spectrum/
H A Dvxlan_flooding_ipv6.sh165 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self \
222 # Add FDB entries for remote VTEPs and corresponding tc filters on the
239 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::12
240 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::13
241 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::14
242 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::15
243 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::16
253 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::2
254 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::3
255 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::4
[all …]
/linux/tools/testing/selftests/drivers/net/mlxsw/spectrum-2/
H A Dvxlan_flooding_ipv6.sh176 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self \
239 # Add FDB entries for remote VTEPs and corresponding tc filters on the
256 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::10
257 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::11
258 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::12
259 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::13
269 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::2
270 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::3
271 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::4
272 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::5
[all …]
/linux/tools/testing/selftests/drivers/net/dsa/
H A Dtest_bridge_fdb_stress.sh4 # Bridge FDB entries can be offloaded to DSA switches without holding the
8 # This test creates a background task that stresses the FDB by adding and
12 # Since either the FDB dump or the additions/removals can fail, but the
38 bridge fdb add 00:01:02:03:04:05 dev $eth master static
39 bridge fdb del 00:01:02:03:04:05 dev $eth master static
44 bridge fdb show > /dev/null

123456