fdb              3988 drivers/infiniband/hw/mlx5/main.c 		prio = &dev->flow_db->fdb;
fdb               202 drivers/infiniband/hw/mlx5/mlx5_ib.h 	struct mlx5_ib_flow_prio	fdb;
fdb               322 drivers/net/dsa/mt7530.c mt7530_fdb_read(struct mt7530_priv *priv, struct mt7530_fdb *fdb)
fdb               335 drivers/net/dsa/mt7530.c 	fdb->vid = (reg[1] >> CVID) & CVID_MASK;
fdb               336 drivers/net/dsa/mt7530.c 	fdb->aging = (reg[2] >> AGE_TIMER) & AGE_TIMER_MASK;
fdb               337 drivers/net/dsa/mt7530.c 	fdb->port_mask = (reg[2] >> PORT_MAP) & PORT_MAP_MASK;
fdb               338 drivers/net/dsa/mt7530.c 	fdb->mac[0] = (reg[0] >> MAC_BYTE_0) & MAC_BYTE_MASK;
fdb               339 drivers/net/dsa/mt7530.c 	fdb->mac[1] = (reg[0] >> MAC_BYTE_1) & MAC_BYTE_MASK;
fdb               340 drivers/net/dsa/mt7530.c 	fdb->mac[2] = (reg[0] >> MAC_BYTE_2) & MAC_BYTE_MASK;
fdb               341 drivers/net/dsa/mt7530.c 	fdb->mac[3] = (reg[0] >> MAC_BYTE_3) & MAC_BYTE_MASK;
fdb               342 drivers/net/dsa/mt7530.c 	fdb->mac[4] = (reg[1] >> MAC_BYTE_4) & MAC_BYTE_MASK;
fdb               343 drivers/net/dsa/mt7530.c 	fdb->mac[5] = (reg[1] >> MAC_BYTE_5) & MAC_BYTE_MASK;
fdb               344 drivers/net/dsa/mt7530.c 	fdb->noarp = ((reg[2] >> ENT_STATUS) & ENT_STATUS_MASK) == STATIC_ENT;
fdb               282 drivers/net/dsa/qca8k.c qca8k_fdb_read(struct qca8k_priv *priv, struct qca8k_fdb *fdb)
fdb               292 drivers/net/dsa/qca8k.c 	fdb->vid = (reg[2] >> QCA8K_ATU_VID_S) & QCA8K_ATU_VID_M;
fdb               294 drivers/net/dsa/qca8k.c 	fdb->aging = reg[2] & QCA8K_ATU_STATUS_M;
fdb               296 drivers/net/dsa/qca8k.c 	fdb->port_mask = (reg[1] >> QCA8K_ATU_PORT_S) & QCA8K_ATU_PORT_M;
fdb               298 drivers/net/dsa/qca8k.c 	fdb->mac[0] = (reg[1] >> QCA8K_ATU_ADDR0_S) & 0xff;
fdb               299 drivers/net/dsa/qca8k.c 	fdb->mac[1] = reg[1] & 0xff;
fdb               300 drivers/net/dsa/qca8k.c 	fdb->mac[2] = (reg[0] >> QCA8K_ATU_ADDR2_S) & 0xff;
fdb               301 drivers/net/dsa/qca8k.c 	fdb->mac[3] = (reg[0] >> QCA8K_ATU_ADDR3_S) & 0xff;
fdb               302 drivers/net/dsa/qca8k.c 	fdb->mac[4] = (reg[0] >> QCA8K_ATU_ADDR4_S) & 0xff;
fdb               303 drivers/net/dsa/qca8k.c 	fdb->mac[5] = reg[0] & 0xff;
fdb               363 drivers/net/dsa/qca8k.c qca8k_fdb_next(struct qca8k_priv *priv, struct qca8k_fdb *fdb, int port)
fdb               367 drivers/net/dsa/qca8k.c 	qca8k_fdb_write(priv, fdb->vid, fdb->port_mask, fdb->mac, fdb->aging);
fdb               370 drivers/net/dsa/qca8k.c 		qca8k_fdb_read(priv, fdb);
fdb               236 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 		mlx5_add_flow_rules(esw->fdb_table.legacy.fdb, spec,
fdb               291 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	struct mlx5_flow_table *fdb;
fdb               301 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	fdb = mlx5_create_auto_grouped_flow_table(root_ns, LEGACY_VEPA_PRIO,
fdb               303 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	if (IS_ERR(fdb)) {
fdb               304 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 		err = PTR_ERR(fdb);
fdb               308 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	esw->fdb_table.legacy.vepa_fdb = fdb;
fdb               319 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	struct mlx5_flow_table *fdb;
fdb               343 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	fdb = mlx5_create_flow_table(root_ns, &ft_attr);
fdb               344 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	if (IS_ERR(fdb)) {
fdb               345 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 		err = PTR_ERR(fdb);
fdb               349 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	esw->fdb_table.legacy.fdb = fdb;
fdb               360 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	g = mlx5_create_flow_group(fdb, flow_group_in);
fdb               375 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	g = mlx5_create_flow_group(fdb, flow_group_in);
fdb               392 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	g = mlx5_create_flow_group(fdb, flow_group_in);
fdb               421 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	if (!esw->fdb_table.legacy.fdb)
fdb               430 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	mlx5_destroy_flow_table(esw->fdb_table.legacy.fdb);
fdb               432 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	esw->fdb_table.legacy.fdb = NULL;
fdb               518 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	if (esw->fdb_table.legacy.fdb && esw->mode == MLX5_ESWITCH_LEGACY)
fdb               609 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	if (!esw->fdb_table.legacy.fdb)
fdb               649 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	if (!esw->fdb_table.legacy.fdb)
fdb              2264 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c 	dest.ft = esw->fdb_table.legacy.fdb;
fdb               146 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h 			struct mlx5_flow_table *fdb;
fdb               167 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h 				struct mlx5_flow_table *fdb;
fdb               147 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	struct mlx5_flow_table *fdb;
fdb               218 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fdb = esw_get_prio_table(esw, attr->chain, attr->prio, !!split);
fdb               219 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (IS_ERR(fdb)) {
fdb               220 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = ERR_CAST(fdb);
fdb               225 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = mlx5_eswitch_add_termtbl_rule(esw, fdb, spec, attr,
fdb               228 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = mlx5_add_flow_rules(fdb, spec, &flow_act, dest, i);
fdb               899 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	struct mlx5_flow_table *fdb;
fdb               906 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fdb = mlx5_create_auto_grouped_flow_table(ns,
fdb               912 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (IS_ERR(fdb)) {
fdb               914 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 			 (int)PTR_ERR(fdb), table_prio, level, sz);
fdb               918 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return fdb;
fdb               925 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	struct mlx5_flow_table *fdb = NULL;
fdb               935 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fdb = fdb_prio_table(esw, chain, prio, level).fdb;
fdb               936 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (fdb) {
fdb               941 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		return fdb;
fdb               961 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		if (fdb_prio_table(esw, chain, prio, l).fdb) {
fdb               966 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		fdb = create_next_size_table(esw, ns, table_prio, l, flags);
fdb               967 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		if (IS_ERR(fdb)) {
fdb               972 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		fdb_prio_table(esw, chain, prio, l).fdb = fdb;
fdb               977 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return fdb;
fdb               984 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return fdb;
fdb              1001 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		put_sz_to_pool(esw, fdb_prio_table(esw, chain, prio, l).fdb->max_fte);
fdb              1002 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		mlx5_destroy_flow_table(fdb_prio_table(esw, chain, prio, l).fdb);
fdb              1003 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		fdb_prio_table(esw, chain, prio, l).fdb = NULL;
fdb              1052 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	struct mlx5_flow_table *fdb = NULL;
fdb              1105 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	fdb = mlx5_create_flow_table(root_ns, &ft_attr);
fdb              1106 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (IS_ERR(fdb)) {
fdb              1107 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		err = PTR_ERR(fdb);
fdb              1111 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	esw->fdb_table.offloads.slow_fdb = fdb;
fdb              1138 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	g = mlx5_create_flow_group(fdb, flow_group_in);
fdb              1168 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	g = mlx5_create_flow_group(fdb, flow_group_in);
fdb              1190 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	g = mlx5_create_flow_group(fdb, flow_group_in);
fdb               211 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 			      struct mlx5_flow_table *fdb,
fdb               255 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	rule = mlx5_add_flow_rules(fdb, spec, flow_act, dest, num_dest);
fdb               285 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	rule = mlx5_add_flow_rules(fdb, spec, flow_act, dest, num_dest);
fdb              1901 drivers/net/ethernet/rocker/rocker_ofdpa.c 	struct ofdpa_fdb_tbl_entry *fdb;
fdb              1906 drivers/net/ethernet/rocker/rocker_ofdpa.c 	fdb = kzalloc(sizeof(*fdb), GFP_KERNEL);
fdb              1907 drivers/net/ethernet/rocker/rocker_ofdpa.c 	if (!fdb)
fdb              1910 drivers/net/ethernet/rocker/rocker_ofdpa.c 	fdb->learned = (flags & OFDPA_OP_FLAG_LEARNED);
fdb              1911 drivers/net/ethernet/rocker/rocker_ofdpa.c 	fdb->touched = jiffies;
fdb              1912 drivers/net/ethernet/rocker/rocker_ofdpa.c 	fdb->key.ofdpa_port = ofdpa_port;
fdb              1913 drivers/net/ethernet/rocker/rocker_ofdpa.c 	ether_addr_copy(fdb->key.addr, addr);
fdb              1914 drivers/net/ethernet/rocker/rocker_ofdpa.c 	fdb->key.vlan_id = vlan_id;
fdb              1915 drivers/net/ethernet/rocker/rocker_ofdpa.c 	fdb->key_crc32 = crc32(~0, &fdb->key, sizeof(fdb->key));
fdb              1919 drivers/net/ethernet/rocker/rocker_ofdpa.c 	found = ofdpa_fdb_tbl_find(ofdpa, fdb);
fdb              1924 drivers/net/ethernet/rocker/rocker_ofdpa.c 			kfree(fdb);
fdb              1928 drivers/net/ethernet/rocker/rocker_ofdpa.c 		hash_add(ofdpa->fdb_tbl, &fdb->entry,
fdb              1929 drivers/net/ethernet/rocker/rocker_ofdpa.c 			 fdb->key_crc32);
fdb              1936 drivers/net/ethernet/rocker/rocker_ofdpa.c 		kfree(fdb);
fdb               175 drivers/net/vxlan.c static inline struct vxlan_rdst *first_remote_rcu(struct vxlan_fdb *fdb)
fdb               177 drivers/net/vxlan.c 	return list_entry_rcu(fdb->remotes.next, struct vxlan_rdst, list);
fdb               180 drivers/net/vxlan.c static inline struct vxlan_rdst *first_remote_rtnl(struct vxlan_fdb *fdb)
fdb               182 drivers/net/vxlan.c 	return list_first_entry(&fdb->remotes, struct vxlan_rdst, list);
fdb               248 drivers/net/vxlan.c 			  const struct vxlan_fdb *fdb,
fdb               269 drivers/net/vxlan.c 		send_eth = !is_zero_ether_addr(fdb->eth_addr);
fdb               273 drivers/net/vxlan.c 	ndm->ndm_state = fdb->state;
fdb               275 drivers/net/vxlan.c 	ndm->ndm_flags = fdb->flags;
fdb               285 drivers/net/vxlan.c 	if (send_eth && nla_put(skb, NDA_LLADDR, ETH_ALEN, &fdb->eth_addr))
fdb               297 drivers/net/vxlan.c 	if ((vxlan->cfg.flags & VXLAN_F_COLLECT_METADATA) && fdb->vni &&
fdb               299 drivers/net/vxlan.c 			be32_to_cpu(fdb->vni)))
fdb               305 drivers/net/vxlan.c 	ci.ndm_used	 = jiffies_to_clock_t(now - fdb->used);
fdb               307 drivers/net/vxlan.c 	ci.ndm_updated	 = jiffies_to_clock_t(now - fdb->updated);
fdb               333 drivers/net/vxlan.c static void __vxlan_fdb_notify(struct vxlan_dev *vxlan, struct vxlan_fdb *fdb,
fdb               344 drivers/net/vxlan.c 	err = vxlan_fdb_info(skb, vxlan, fdb, 0, 0, type, 0, rd);
fdb               360 drivers/net/vxlan.c 			    const struct vxlan_fdb *fdb,
fdb               371 drivers/net/vxlan.c 	memcpy(fdb_info->eth_addr, fdb->eth_addr, ETH_ALEN);
fdb               372 drivers/net/vxlan.c 	fdb_info->vni = fdb->vni;
fdb               374 drivers/net/vxlan.c 	fdb_info->added_by_user = fdb->flags & NTF_VXLAN_ADDED_BY_USER;
fdb               378 drivers/net/vxlan.c 					      struct vxlan_fdb *fdb,
fdb               392 drivers/net/vxlan.c 	vxlan_fdb_switchdev_notifier_info(vxlan, fdb, rd, NULL, &info);
fdb               398 drivers/net/vxlan.c static int vxlan_fdb_notify(struct vxlan_dev *vxlan, struct vxlan_fdb *fdb,
fdb               407 drivers/net/vxlan.c 			err = vxlan_fdb_switchdev_call_notifiers(vxlan, fdb, rd,
fdb               413 drivers/net/vxlan.c 			vxlan_fdb_switchdev_call_notifiers(vxlan, fdb, rd,
fdb               419 drivers/net/vxlan.c 	__vxlan_fdb_notify(vxlan, fdb, rd, type);
fdb               827 drivers/net/vxlan.c 			    struct vxlan_fdb **fdb)
fdb               848 drivers/net/vxlan.c 	*fdb = f;
fdb               341 fs/xfs/libxfs/xfs_dir2_node.c 	xfs_dir2_db_t		fdb;		/* freespace block number */
fdb               360 fs/xfs/libxfs/xfs_dir2_node.c 	if ((error = xfs_dir2_grow_inode(args, XFS_DIR2_FREE_SPACE, &fdb))) {
fdb               363 fs/xfs/libxfs/xfs_dir2_node.c 	ASSERT(fdb == xfs_dir2_byte_to_db(args->geo, XFS_DIR2_FREE_OFFSET));
fdb               367 fs/xfs/libxfs/xfs_dir2_node.c 	error = xfs_dir3_free_get_buf(args, fdb, &fbp);
fdb              1117 fs/xfs/libxfs/xfs_dir2_node.c 	xfs_dir2_db_t		fdb,
fdb              1172 fs/xfs/libxfs/xfs_dir2_node.c 		error = xfs_dir2_shrink_inode(args, fdb, fbp);
fdb              1280 fs/xfs/libxfs/xfs_dir2_node.c 		xfs_dir2_db_t	fdb;		/* freeblock block number */
fdb              1288 fs/xfs/libxfs/xfs_dir2_node.c 		fdb = dp->d_ops->db_to_fdb(args->geo, db);
fdb              1290 fs/xfs/libxfs/xfs_dir2_node.c 					   xfs_dir2_db_to_da(args->geo, fdb),
fdb              1300 fs/xfs/libxfs/xfs_dir2_node.c 			(fdb - xfs_dir2_byte_to_db(args->geo,
fdb              1336 fs/xfs/libxfs/xfs_dir2_node.c 						 fdb, findex, fbp, longest);
fdb                76 net/bridge/br_fdb.c 				  const struct net_bridge_fdb_entry *fdb)
fdb                78 net/bridge/br_fdb.c 	return !fdb->is_static && !fdb->added_by_external_learn &&
fdb                79 net/bridge/br_fdb.c 		time_before_eq(fdb->updated + hold_time(br), jiffies);
fdb               108 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               113 net/bridge/br_fdb.c 	fdb = fdb_find_rcu(&br->fdb_hash_tbl, addr, vid);
fdb               116 net/bridge/br_fdb.c 	return fdb;
fdb               416 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               425 net/bridge/br_fdb.c 		fdb = br_fdb_find_rcu(port->br, addr, 0);
fdb               426 net/bridge/br_fdb.c 		ret = fdb && fdb->dst && fdb->dst->dev != dev &&
fdb               427 net/bridge/br_fdb.c 			fdb->dst->state == BR_STATE_FORWARDING;
fdb               490 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               492 net/bridge/br_fdb.c 	fdb = kmem_cache_alloc(br_fdb_cache, GFP_ATOMIC);
fdb               493 net/bridge/br_fdb.c 	if (fdb) {
fdb               494 net/bridge/br_fdb.c 		memcpy(fdb->key.addr.addr, addr, ETH_ALEN);
fdb               495 net/bridge/br_fdb.c 		fdb->dst = source;
fdb               496 net/bridge/br_fdb.c 		fdb->key.vlan_id = vid;
fdb               497 net/bridge/br_fdb.c 		fdb->is_local = is_local;
fdb               498 net/bridge/br_fdb.c 		fdb->is_static = is_static;
fdb               499 net/bridge/br_fdb.c 		fdb->added_by_user = 0;
fdb               500 net/bridge/br_fdb.c 		fdb->added_by_external_learn = 0;
fdb               501 net/bridge/br_fdb.c 		fdb->offloaded = 0;
fdb               502 net/bridge/br_fdb.c 		fdb->is_sticky = 0;
fdb               503 net/bridge/br_fdb.c 		fdb->updated = fdb->used = jiffies;
fdb               505 net/bridge/br_fdb.c 						  &fdb->rhnode,
fdb               507 net/bridge/br_fdb.c 			kmem_cache_free(br_fdb_cache, fdb);
fdb               508 net/bridge/br_fdb.c 			fdb = NULL;
fdb               510 net/bridge/br_fdb.c 			hlist_add_head_rcu(&fdb->fdb_node, &br->fdb_list);
fdb               513 net/bridge/br_fdb.c 	return fdb;
fdb               519 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               524 net/bridge/br_fdb.c 	fdb = br_fdb_find(br, addr, vid);
fdb               525 net/bridge/br_fdb.c 	if (fdb) {
fdb               529 net/bridge/br_fdb.c 		if (fdb->is_local)
fdb               533 net/bridge/br_fdb.c 		fdb_delete(br, fdb, true);
fdb               536 net/bridge/br_fdb.c 	fdb = fdb_create(br, source, addr, vid, 1, 1);
fdb               537 net/bridge/br_fdb.c 	if (!fdb)
fdb               541 net/bridge/br_fdb.c 	fdb_notify(br, fdb, RTM_NEWNEIGH, true);
fdb               560 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               572 net/bridge/br_fdb.c 	fdb = fdb_find_rcu(&br->fdb_hash_tbl, addr, vid);
fdb               573 net/bridge/br_fdb.c 	if (likely(fdb)) {
fdb               575 net/bridge/br_fdb.c 		if (unlikely(fdb->is_local)) {
fdb               583 net/bridge/br_fdb.c 			if (unlikely(source != fdb->dst && !fdb->is_sticky)) {
fdb               584 net/bridge/br_fdb.c 				fdb->dst = source;
fdb               587 net/bridge/br_fdb.c 				if (unlikely(fdb->added_by_external_learn))
fdb               588 net/bridge/br_fdb.c 					fdb->added_by_external_learn = 0;
fdb               590 net/bridge/br_fdb.c 			if (now != fdb->updated)
fdb               591 net/bridge/br_fdb.c 				fdb->updated = now;
fdb               593 net/bridge/br_fdb.c 				fdb->added_by_user = 1;
fdb               596 net/bridge/br_fdb.c 				fdb_notify(br, fdb, RTM_NEWNEIGH, true);
fdb               601 net/bridge/br_fdb.c 		fdb = fdb_create(br, source, addr, vid, 0, 0);
fdb               602 net/bridge/br_fdb.c 		if (fdb) {
fdb               604 net/bridge/br_fdb.c 				fdb->added_by_user = 1;
fdb               607 net/bridge/br_fdb.c 			fdb_notify(br, fdb, RTM_NEWNEIGH, true);
fdb               617 net/bridge/br_fdb.c 		      const struct net_bridge_fdb_entry *fdb)
fdb               619 net/bridge/br_fdb.c 	if (fdb->is_local)
fdb               621 net/bridge/br_fdb.c 	else if (fdb->is_static)
fdb               623 net/bridge/br_fdb.c 	else if (has_expired(br, fdb))
fdb               630 net/bridge/br_fdb.c 			 const struct net_bridge_fdb_entry *fdb,
fdb               648 net/bridge/br_fdb.c 	ndm->ndm_ifindex = fdb->dst ? fdb->dst->dev->ifindex : br->dev->ifindex;
fdb               649 net/bridge/br_fdb.c 	ndm->ndm_state   = fdb_to_nud(br, fdb);
fdb               651 net/bridge/br_fdb.c 	if (fdb->offloaded)
fdb               653 net/bridge/br_fdb.c 	if (fdb->added_by_external_learn)
fdb               655 net/bridge/br_fdb.c 	if (fdb->is_sticky)
fdb               658 net/bridge/br_fdb.c 	if (nla_put(skb, NDA_LLADDR, ETH_ALEN, &fdb->key.addr))
fdb               662 net/bridge/br_fdb.c 	ci.ndm_used	 = jiffies_to_clock_t(now - fdb->used);
fdb               664 net/bridge/br_fdb.c 	ci.ndm_updated	 = jiffies_to_clock_t(now - fdb->updated);
fdb               669 net/bridge/br_fdb.c 	if (fdb->key.vlan_id && nla_put(skb, NDA_VLAN, sizeof(u16),
fdb               670 net/bridge/br_fdb.c 					&fdb->key.vlan_id))
fdb               691 net/bridge/br_fdb.c 		       const struct net_bridge_fdb_entry *fdb, int type,
fdb               699 net/bridge/br_fdb.c 		br_switchdev_fdb_notify(fdb, type);
fdb               705 net/bridge/br_fdb.c 	err = fdb_fill_info(skb, br, fdb, 0, 0, type, 0);
fdb               803 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               821 net/bridge/br_fdb.c 	fdb = br_fdb_find(br, addr, vid);
fdb               822 net/bridge/br_fdb.c 	if (fdb == NULL) {
fdb               826 net/bridge/br_fdb.c 		fdb = fdb_create(br, source, addr, vid, 0, 0);
fdb               827 net/bridge/br_fdb.c 		if (!fdb)
fdb               835 net/bridge/br_fdb.c 		if (fdb->dst != source) {
fdb               836 net/bridge/br_fdb.c 			fdb->dst = source;
fdb               841 net/bridge/br_fdb.c 	if (fdb_to_nud(br, fdb) != state) {
fdb               843 net/bridge/br_fdb.c 			fdb->is_local = 1;
fdb               844 net/bridge/br_fdb.c 			if (!fdb->is_static) {
fdb               845 net/bridge/br_fdb.c 				fdb->is_static = 1;
fdb               849 net/bridge/br_fdb.c 			fdb->is_local = 0;
fdb               850 net/bridge/br_fdb.c 			if (!fdb->is_static) {
fdb               851 net/bridge/br_fdb.c 				fdb->is_static = 1;
fdb               855 net/bridge/br_fdb.c 			fdb->is_local = 0;
fdb               856 net/bridge/br_fdb.c 			if (fdb->is_static) {
fdb               857 net/bridge/br_fdb.c 				fdb->is_static = 0;
fdb               865 net/bridge/br_fdb.c 	if (is_sticky != fdb->is_sticky) {
fdb               866 net/bridge/br_fdb.c 		fdb->is_sticky = is_sticky;
fdb               870 net/bridge/br_fdb.c 	fdb->added_by_user = 1;
fdb               872 net/bridge/br_fdb.c 	fdb->used = jiffies;
fdb               874 net/bridge/br_fdb.c 		fdb->updated = jiffies;
fdb               875 net/bridge/br_fdb.c 		fdb_notify(br, fdb, RTM_NEWNEIGH, true);
fdb               983 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb               985 net/bridge/br_fdb.c 	fdb = br_fdb_find(br, addr, vlan);
fdb               986 net/bridge/br_fdb.c 	if (!fdb || fdb->dst != p)
fdb               989 net/bridge/br_fdb.c 	fdb_delete(br, fdb, true);
fdb              1112 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb              1120 net/bridge/br_fdb.c 	fdb = br_fdb_find(br, addr, vid);
fdb              1121 net/bridge/br_fdb.c 	if (!fdb) {
fdb              1122 net/bridge/br_fdb.c 		fdb = fdb_create(br, p, addr, vid, 0, 0);
fdb              1123 net/bridge/br_fdb.c 		if (!fdb) {
fdb              1128 net/bridge/br_fdb.c 			fdb->added_by_user = 1;
fdb              1129 net/bridge/br_fdb.c 		fdb->added_by_external_learn = 1;
fdb              1130 net/bridge/br_fdb.c 		fdb_notify(br, fdb, RTM_NEWNEIGH, swdev_notify);
fdb              1132 net/bridge/br_fdb.c 		fdb->updated = jiffies;
fdb              1134 net/bridge/br_fdb.c 		if (fdb->dst != p) {
fdb              1135 net/bridge/br_fdb.c 			fdb->dst = p;
fdb              1139 net/bridge/br_fdb.c 		if (fdb->added_by_external_learn) {
fdb              1141 net/bridge/br_fdb.c 			fdb->used = jiffies;
fdb              1142 net/bridge/br_fdb.c 		} else if (!fdb->added_by_user) {
fdb              1144 net/bridge/br_fdb.c 			fdb->added_by_external_learn = 1;
fdb              1149 net/bridge/br_fdb.c 			fdb->added_by_user = 1;
fdb              1152 net/bridge/br_fdb.c 			fdb_notify(br, fdb, RTM_NEWNEIGH, swdev_notify);
fdb              1165 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb              1170 net/bridge/br_fdb.c 	fdb = br_fdb_find(br, addr, vid);
fdb              1171 net/bridge/br_fdb.c 	if (fdb && fdb->added_by_external_learn)
fdb              1172 net/bridge/br_fdb.c 		fdb_delete(br, fdb, swdev_notify);
fdb              1184 net/bridge/br_fdb.c 	struct net_bridge_fdb_entry *fdb;
fdb              1188 net/bridge/br_fdb.c 	fdb = br_fdb_find(br, addr, vid);
fdb              1189 net/bridge/br_fdb.c 	if (fdb)
fdb              1190 net/bridge/br_fdb.c 		fdb->offloaded = offloaded;
fdb              1196 net/bridge/br_private.h void br_switchdev_fdb_notify(const struct net_bridge_fdb_entry *fdb,
fdb              1243 net/bridge/br_private.h br_switchdev_fdb_notify(const struct net_bridge_fdb_entry *fdb, int type)
fdb               122 net/bridge/br_switchdev.c br_switchdev_fdb_notify(const struct net_bridge_fdb_entry *fdb, int type)
fdb               124 net/bridge/br_switchdev.c 	if (!fdb->dst)
fdb               129 net/bridge/br_switchdev.c 		br_switchdev_fdb_call_notifiers(false, fdb->key.addr.addr,
fdb               130 net/bridge/br_switchdev.c 						fdb->key.vlan_id,
fdb               131 net/bridge/br_switchdev.c 						fdb->dst->dev,
fdb               132 net/bridge/br_switchdev.c 						fdb->added_by_user,
fdb               133 net/bridge/br_switchdev.c 						fdb->offloaded);
fdb               136 net/bridge/br_switchdev.c 		br_switchdev_fdb_call_notifiers(true, fdb->key.addr.addr,
fdb               137 net/bridge/br_switchdev.c 						fdb->key.vlan_id,
fdb               138 net/bridge/br_switchdev.c 						fdb->dst->dev,
fdb               139 net/bridge/br_switchdev.c 						fdb->added_by_user,
fdb               140 net/bridge/br_switchdev.c 						fdb->offloaded);