| /linux/net/bridge/ |
| H A D | br_fdb.c | 69 const struct net_bridge_fdb_entry *fdb) in has_expired() argument 71 return !test_bit(BR_FDB_STATIC, &fdb->flags) && in has_expired() 72 !test_bit(BR_FDB_ADDED_BY_EXT_LEARN, &fdb->flags) && in has_expired() 73 time_before_eq(READ_ONCE(fdb->updated) + hold_time(br), jiffies); in has_expired() 77 const struct net_bridge_fdb_entry *fdb) in fdb_to_nud() argument 79 if (test_bit(BR_FDB_LOCAL, &fdb->flags)) in fdb_to_nud() 81 else if (test_bit(BR_FDB_STATIC, &fdb->flags)) in fdb_to_nud() 83 else if (has_expired(br, fdb)) in fdb_to_nud() 90 const struct net_bridge_fdb_entry *fdb, in fdb_fill_info() argument 93 const struct net_bridge_port *dst = READ_ONCE(fdb->dst); in fdb_fill_info() [all …]
|
| H A D | br_switchdev.c | 130 const struct net_bridge_fdb_entry *fdb, in br_switchdev_fdb_populate() argument 133 const struct net_bridge_port *p = READ_ONCE(fdb->dst); in br_switchdev_fdb_populate() 135 item->addr = fdb->key.addr.addr; in br_switchdev_fdb_populate() 136 item->vid = fdb->key.vlan_id; in br_switchdev_fdb_populate() 137 item->added_by_user = test_bit(BR_FDB_ADDED_BY_USER, &fdb->flags); in br_switchdev_fdb_populate() 138 item->offloaded = test_bit(BR_FDB_OFFLOADED, &fdb->flags); in br_switchdev_fdb_populate() 139 item->is_local = test_bit(BR_FDB_LOCAL, &fdb->flags); in br_switchdev_fdb_populate() 147 const struct net_bridge_fdb_entry *fdb, int type) in br_switchdev_fdb_notify() argument 151 if (test_bit(BR_FDB_LOCKED, &fdb->flags)) in br_switchdev_fdb_notify() 160 if (test_bit(BR_FDB_ADDED_BY_USER, &fdb->flags) && in br_switchdev_fdb_notify() [all …]
|
| /linux/tools/testing/selftests/net/forwarding/ |
| H A D | bridge_activity_notify.sh | 69 bridge -d fdb get "$mac" br br1 | grep -q -v "inactive" 76 bridge -d fdb get "$mac" br br1 | grep -q "inactive" 87 bridge fdb add "$mac" dev "$swp1" master static activity_notify inactive 88 bridge -d fdb get "$mac" br br1 | grep -q "inactive" 98 bridge fdb del "$mac" dev "$swp1" master 110 bridge fdb add "$mac" dev "$swp1" master dynamic 111 bridge fdb replace "$mac" dev "$swp1" master static activity_notify norefresh 113 bridge -d fdb get "$mac" br br1 | grep -q "activity_notify" 116 bridge -d fdb get "$mac" br br1 | grep -q "inactive" 125 bridge fdb del "$mac" dev "$swp1" master [all …]
|
| H A D | bridge_locked_port.sh | 107 bridge fdb add `mac_get $h1` dev $swp1 master static 113 bridge fdb del `mac_get $h1` dev $swp1 master static 137 bridge fdb add `mac_get $h1` dev $swp1 vlan 100 master static 143 bridge fdb del `mac_get $h1` dev $swp1 vlan 100 master static 166 bridge fdb add `mac_get $h1` dev $swp1 master static 171 bridge fdb del `mac_get $h1` dev $swp1 master static 192 bridge fdb get `mac_get $h1` br br0 vlan 1 &> /dev/null 200 bridge fdb get `mac_get $h1` br br0 vlan 1 | grep "dev $swp1" | grep -q "locked" 203 bridge fdb replace `mac_get $h1` dev $swp1 master static 208 bridge fdb get `mac_get $h1` br br0 vlan 1 | grep "dev $swp1" | grep -q "locked" [all …]
|
| H A D | vxlan_bridge_1q.sh | 190 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 D | vxlan_bridge_1d.sh | 148 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 D | vxlan_bridge_1q_ipv6.sh | 205 bridge fdb append dev vx10 00:00:00:00:00:00 dst 2001:db8:4::1 self 206 bridge fdb append dev vx10 00:00:00:00:00:00 dst 2001:db8:5::1 self 208 bridge fdb append dev vx20 00:00:00:00:00:00 dst 2001:db8:4::1 self 209 bridge fdb append dev vx20 00:00:00:00:00:00 dst 2001:db8:5::1 self 214 bridge fdb del dev vx20 00:00:00:00:00:00 dst 2001:db8:5::1 self 215 bridge fdb del dev vx20 00:00:00:00:00:00 dst 2001:db8:4::1 self 217 bridge fdb del dev vx10 00:00:00:00:00:00 dst 2001:db8:5::1 self 218 bridge fdb del dev vx10 00:00:00:00:00:00 dst 2001:db8:4::1 self 296 bridge fdb append dev vx10 00:00:00:00:00:00 dst 2001:db8:3::1 self 297 bridge fdb append dev vx10 00:00:00:00:00:00 dst $other_in_addr self [all …]
|
| H A D | bridge_fdb_learning_limit.sh | 113 bridge -j fdb show br br0 | \ 128 bridge fdb flush dev br0 132 bridge fdb add "$H1_DEFAULT_MAC" dev "$swp1" master static use 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 174 bridge fdb del "$mac" dev "$swp1" master
|
| H A D | vxlan_bridge_1q_mc_ul.sh | 657 bridge fdb add dev vx10 \ 666 bridge -6 fdb add dev vx20 \ 676 bridge fdb del dev vx10 00:00:00:00:00:00 677 bridge fdb add dev vx10 00:00:00:00:00:00 self static dst "$GROUP4" 693 bridge -6 fdb del dev vx20 00:00:00:00:00:00 694 bridge -6 fdb add dev vx20 00:00:00:00:00:00 self static dst "$GROUP6" 706 bridge fdb del dev vx10 00:00:00:00:00:00 707 bridge fdb add dev vx10 00:00:00:00:00:00 self static dst "$GROUP4" 717 bridge fdb del dev vx10 00:00:00:00:00:00 718 bridge fdb add dev vx10 00:00:00:00:00:00 self static dst "$GROUP4" [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
| H A D | vporttbl.c | 19 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() 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() 108 fdb = ERR_PTR(-ENOENT); in mlx5_esw_vporttbl_get() 112 fdb = esw_vport_tbl_create(esw, ns, attr->vport_ns); in mlx5_esw_vporttbl_get() [all …]
|
| H A D | legacy.c | 27 struct mlx5_flow_table *fdb; in esw_create_legacy_vepa_table() local 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() 46 esw->fdb_table.legacy.vepa_fdb = fdb; in esw_create_legacy_vepa_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() 65 esw->fdb_table.legacy.fdb = NULL; in esw_destroy_legacy_fdb_table() 77 struct mlx5_flow_table *fdb; in esw_create_legacy_fdb_table() local 100 fdb = mlx5_create_flow_table(root_ns, &ft_attr); in esw_create_legacy_fdb_table() [all …]
|
| /linux/tools/testing/selftests/drivers/net/mlxsw/spectrum/ |
| H A D | vxlan_flooding_ipv6.sh | 165 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self \ 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 256 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::5 [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/esw/diag/ |
| H A D | bridge_tracepoint.h | 14 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/drivers/net/ethernet/ti/icssm/ |
| H A D | icssm_prueth_switch.c | 307 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() 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() 550 err = icssm_prueth_sw_fdb_spin_lock(fdb); in icssm_prueth_sw_insert_fdb_entry() 556 if (fdb->total_entries == FDB_MAC_TBL_MAX_ENTRIES) { in icssm_prueth_sw_insert_fdb_entry() [all …]
|
| H A D | icssm_switchdev.c | 101 struct switchdev_notifier_fdb_info *fdb; in icssm_sw_event_work() local 113 fdb = &switchdev_work->fdb_info; 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() 131 fdb->addr, fdb->vid, fdb->added_by_user, port); in icssm_sw_event_work() 133 if (fdb->is_local) in icssm_sw_event_work() [all …]
|
| /linux/drivers/net/ethernet/ti/ |
| H A D | am65-cpsw-switchdev.c | 371 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 …]
|
| H A D | cpsw_switchdev.c | 381 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 …]
|
| /linux/drivers/net/ethernet/ti/icssg/ |
| H A D | icssg_switchdev.c | 130 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-2/ |
| H A D | vxlan_flooding_ipv6.sh | 176 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self \ 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 282 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 2001:db8:2::14 [all …]
|
| /linux/tools/testing/selftests/net/ |
| H A D | fdb_flush.sh | 131 $BRIDGE fdb add $mac dev $dev $args 142 $BRIDGE fdb add $mac dev $dev $args 152 local entries=$($BRIDGE fdb show dev $dev | grep "$filter" | wc -l) 287 $IP nexthop add id 10 via 192.0.2.1 fdb 288 $IP nexthop add id $nhid_1 group 10 fdb 290 $IP nexthop add id 20 via 192.0.2.2 fdb 291 $IP nexthop add id $nhid_2 group 20 fdb 522 $IP nexthop add id 10 via 192.0.2.1 fdb 523 $IP nexthop add id $nhid group 10 fdb 568 $BRIDGE fdb append $mac dev vx10 dst 192.0.2.1 vni $vni \ [all …]
|
| /linux/tools/testing/selftests/drivers/net/mlxsw/ |
| H A D | vxlan.sh | 483 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 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 525 bridge fdb add de:ad:be:ef:13:37 dev vxlan0 master static 527 de:ad:be:ef:13:37 self bridge fdb show brport vxlan0 [all …]
|
| H A D | vxlan_flooding.sh | 164 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self \ 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 281 bridge fdb del 00:00:00:00:00:00 dev vxlan0 self dst 198.51.100.13 [all …]
|
| H A D | vxlan_fdb_veto.sh | 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 \ 82 bridge fdb add 00:01:02:03:04:05 dev vxlan0 self static \ 86 bridge fdb replace 00:01:02:03:04:05 dev vxlan0 self static \ 90 bridge fdb replace 00:01:02:03:04:05 dev vxlan0 self static \ 102 bridge fdb add 00:00:00:00:00:00 dev vxlan0 self static \ 106 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self static \ 110 bridge fdb append 00:00:00:00:00:00 dev vxlan0 self static \
|
| /linux/drivers/net/dsa/qca/ |
| H A D | qca8k-common.c | 112 static int qca8k_fdb_read(struct qca8k_priv *priv, struct qca8k_fdb *fdb) in qca8k_fdb_read() argument 124 fdb->vid = FIELD_GET(QCA8K_ATU_VID_MASK, reg[2]); in qca8k_fdb_read() 126 fdb->aging = FIELD_GET(QCA8K_ATU_STATUS_MASK, reg[2]); in qca8k_fdb_read() 128 fdb->port_mask = FIELD_GET(QCA8K_ATU_PORT_MASK, reg[1]); in qca8k_fdb_read() 130 fdb->mac[0] = FIELD_GET(QCA8K_ATU_ADDR0_MASK, reg[1]); in qca8k_fdb_read() 131 fdb->mac[1] = FIELD_GET(QCA8K_ATU_ADDR1_MASK, reg[1]); in qca8k_fdb_read() 132 fdb->mac[2] = FIELD_GET(QCA8K_ATU_ADDR2_MASK, reg[0]); in qca8k_fdb_read() 133 fdb->mac[3] = FIELD_GET(QCA8K_ATU_ADDR3_MASK, reg[0]); in qca8k_fdb_read() 134 fdb->mac[4] = FIELD_GET(QCA8K_ATU_ADDR4_MASK, reg[0]); in qca8k_fdb_read() 135 fdb->mac[5] = FIELD_GET(QCA8K_ATU_ADDR5_MASK, reg[0]); in qca8k_fdb_read() [all …]
|
| /linux/drivers/net/ethernet/intel/ice/ |
| H A D | ice_trace.h | 245 TP_PROTO(struct ice_esw_br_fdb_entry *fdb), 246 TP_ARGS(fdb), 252 netdev_name(fdb->dev), 254 memcpy(__entry->addr, fdb->data.addr, ETH_ALEN); 255 __entry->vid = fdb->data.vid; 256 __entry->flags = fdb->flags;), 266 TP_PROTO(struct ice_esw_br_fdb_entry *fdb), 267 TP_ARGS(fdb) 272 TP_PROTO(struct ice_esw_br_fdb_entry *fdb), 273 TP_ARGS(fdb)
|