Home
last modified time | relevance | path

Searched refs:bond (Results 1 – 25 of 37) sorted by relevance

12

/Linux-v5.15/drivers/net/bonding/
Dbond_options.c19 static int bond_option_active_slave_set(struct bonding *bond,
21 static int bond_option_miimon_set(struct bonding *bond,
23 static int bond_option_updelay_set(struct bonding *bond,
25 static int bond_option_downdelay_set(struct bonding *bond,
27 static int bond_option_peer_notif_delay_set(struct bonding *bond,
29 static int bond_option_use_carrier_set(struct bonding *bond,
31 static int bond_option_arp_interval_set(struct bonding *bond,
33 static int bond_option_arp_ip_target_add(struct bonding *bond, __be32 target);
34 static int bond_option_arp_ip_target_rem(struct bonding *bond, __be32 target);
35 static int bond_option_arp_ip_targets_set(struct bonding *bond,
[all …]
Dbond_alb.c55 static void rlb_purge_src_ip(struct bonding *bond, struct arp_pkt *arp);
56 static void rlb_src_unlink(struct bonding *bond, u32 index);
57 static void rlb_src_link(struct bonding *bond, u32 ip_src_hash,
92 static void __tlb_clear_slave(struct bonding *bond, struct slave *slave, in __tlb_clear_slave() argument
99 tx_hash_table = BOND_ALB_INFO(bond).tx_hashtbl; in __tlb_clear_slave()
115 static void tlb_clear_slave(struct bonding *bond, struct slave *slave, in tlb_clear_slave() argument
118 spin_lock_bh(&bond->mode_lock); in tlb_clear_slave()
119 __tlb_clear_slave(bond, slave, save_load); in tlb_clear_slave()
120 spin_unlock_bh(&bond->mode_lock); in tlb_clear_slave()
124 static int tlb_initialize(struct bonding *bond) in tlb_initialize() argument
[all …]
Dbond_main.c261 static bool bond_time_in_interval(struct bonding *bond, unsigned long last_act,
292 netdev_tx_t bond_dev_queue_xmit(struct bonding *bond, struct sk_buff *skb, in bond_dev_queue_xmit() argument
301 if (unlikely(netpoll_tx_running(bond->dev))) in bond_dev_queue_xmit()
302 return bond_netpoll_send_skb(bond_get_slave_by_dev(bond, slave_dev), skb); in bond_dev_queue_xmit()
307 bool bond_sk_check(struct bonding *bond) in bond_sk_check() argument
309 switch (BOND_MODE(bond)) { in bond_sk_check()
312 if (bond->params.xmit_policy == BOND_XMIT_POLICY_LAYER34) in bond_sk_check()
320 static bool bond_xdp_check(struct bonding *bond) in bond_xdp_check() argument
322 switch (BOND_MODE(bond)) { in bond_xdp_check()
331 if (bond->params.xmit_policy != BOND_XMIT_POLICY_VLAN_SRCMAC) in bond_xdp_check()
[all …]
Dbond_procfs.c14 struct bonding *bond = PDE_DATA(file_inode(seq->file)); in bond_info_seq_start() local
24 bond_for_each_slave_rcu(bond, slave, iter) in bond_info_seq_start()
33 struct bonding *bond = PDE_DATA(file_inode(seq->file)); in bond_info_seq_next() local
40 return bond_first_slave_rcu(bond); in bond_info_seq_next()
42 bond_for_each_slave_rcu(bond, slave, iter) { in bond_info_seq_next()
60 struct bonding *bond = PDE_DATA(file_inode(seq->file)); in bond_info_show_master() local
65 curr = rcu_dereference(bond->curr_active_slave); in bond_info_show_master()
68 bond_mode_name(BOND_MODE(bond))); in bond_info_show_master()
70 if (BOND_MODE(bond) == BOND_MODE_ACTIVEBACKUP && in bond_info_show_master()
71 bond->params.fail_over_mac) { in bond_info_show_master()
[all …]
Dbond_sysfs.c41 struct bonding *bond; in bonding_show_bonds() local
45 list_for_each_entry(bond, &bn->dev_list, bond_list) { in bonding_show_bonds()
53 res += sprintf(buf + res, "%s ", bond->dev->name); in bonding_show_bonds()
64 struct bonding *bond; in bond_get_by_name() local
66 list_for_each_entry(bond, &bn->dev_list, bond_list) { in bond_get_by_name()
67 if (strncmp(bond->dev->name, ifname, IFNAMSIZ) == 0) in bond_get_by_name()
68 return bond->dev; in bond_get_by_name()
145 struct bonding *bond = to_bond(d); in bonding_sysfs_store_option() local
156 ret = bond_opt_tryset_rtnl(bond, opt->id, buffer_clone); in bonding_sysfs_store_option()
168 struct bonding *bond = to_bond(d); in bonding_show_slaves() local
[all …]
Dbond_debugfs.c20 struct bonding *bond = m->private; in bond_debug_rlb_hash_show() local
21 struct alb_bond_info *bond_info = &(BOND_ALB_INFO(bond)); in bond_debug_rlb_hash_show()
25 if (BOND_MODE(bond) != BOND_MODE_ALB) in bond_debug_rlb_hash_show()
31 spin_lock_bh(&bond->mode_lock); in bond_debug_rlb_hash_show()
44 spin_unlock_bh(&bond->mode_lock); in bond_debug_rlb_hash_show()
50 void bond_debug_register(struct bonding *bond) in bond_debug_register() argument
55 bond->debug_dir = in bond_debug_register()
56 debugfs_create_dir(bond->dev->name, bonding_debug_root); in bond_debug_register()
58 debugfs_create_file("rlb_hash_table", 0400, bond->debug_dir, in bond_debug_register()
59 bond, &bond_debug_rlb_hash_fops); in bond_debug_register()
[all …]
Dbond_netlink.c55 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in bond_fill_slave_info()
136 struct bonding *bond = netdev_priv(bond_dev); in bond_slave_changelink() local
151 err = __bond_opt_set(bond, BOND_OPT_QUEUE_ID, &newval); in bond_slave_changelink()
163 struct bonding *bond = netdev_priv(bond_dev); in bond_changelink() local
175 err = __bond_opt_set(bond, BOND_OPT_MODE, &newval); in bond_changelink()
192 err = __bond_opt_set(bond, BOND_OPT_ACTIVE_SLAVE, &newval); in bond_changelink()
200 err = __bond_opt_set(bond, BOND_OPT_MIIMON, &newval); in bond_changelink()
208 err = __bond_opt_set(bond, BOND_OPT_UPDELAY, &newval); in bond_changelink()
216 err = __bond_opt_set(bond, BOND_OPT_DOWNDELAY, &newval); in bond_changelink()
224 err = __bond_opt_set(bond, BOND_OPT_PEER_NOTIF_DELAY, &newval); in bond_changelink()
[all …]
Dbond_3ad.c143 struct bonding *bond = __get_bond_by_port(port); in __get_first_agg() local
148 if (bond == NULL) in __get_first_agg()
152 first_slave = bond_first_slave_rcu(bond); in __get_first_agg()
209 struct bonding *bond = __get_bond_by_port(port); in __get_agg_selection_mode() local
211 if (bond == NULL) in __get_agg_selection_mode()
214 return bond->params.ad_select; in __get_agg_selection_mode()
223 struct bonding *bond = __get_bond_by_port(port); in __check_agg_selection_timer() local
225 if (bond == NULL) in __check_agg_selection_timer()
228 return BOND_AD_INFO(bond).agg_select_timer ? 1 : 0; in __check_agg_selection_timer()
331 slave->bond->dev->name, in __get_link_speed()
[all …]
Dbond_sysfs_slave.c70 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in ad_aggregator_id_show()
85 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in ad_actor_oper_port_state_show()
100 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in ad_partner_oper_port_state_show()
/Linux-v5.15/include/net/
Dbonding.h50 #define BOND_MODE(bond) ((bond)->params.mode) argument
53 #define bond_slave_list(bond) (&(bond)->dev->adj_list.lower) argument
55 #define bond_has_slaves(bond) !list_empty(bond_slave_list(bond)) argument
58 #define bond_first_slave(bond) \ argument
59 (bond_has_slaves(bond) ? \
60 netdev_adjacent_get_private(bond_slave_list(bond)->next) : \
62 #define bond_last_slave(bond) \ argument
63 (bond_has_slaves(bond) ? \
64 netdev_adjacent_get_private(bond_slave_list(bond)->prev) : \
68 #define bond_first_slave_rcu(bond) \ argument
[all …]
Dbond_alb.h14 #define BOND_ALB_INFO(bond) ((bond)->alb_info) argument
23 #define BOND_ALB_LP_INTERVAL(bond) (bond->params.lp_interval) /* In seconds, periodic send of argument
30 #define BOND_ALB_LP_TICKS(bond) (BOND_ALB_LP_INTERVAL(bond) \ argument
153 int bond_alb_initialize(struct bonding *bond, int rlb_enabled);
154 void bond_alb_deinitialize(struct bonding *bond);
155 int bond_alb_init_slave(struct bonding *bond, struct slave *slave);
156 void bond_alb_deinit_slave(struct bonding *bond, struct slave *slave);
157 void bond_alb_handle_link_change(struct bonding *bond, struct slave *slave, char link);
158 void bond_alb_handle_active_change(struct bonding *bond, struct slave *new_slave);
161 struct slave *bond_xmit_alb_slave_get(struct bonding *bond,
[all …]
Dbond_3ad.h259 #define BOND_AD_INFO(bond) ((bond)->ad_info) argument
293 void bond_3ad_initialize(struct bonding *bond, u16 tick_resolution);
297 void bond_3ad_initiate_agg_selection(struct bonding *bond, int timeout);
300 int bond_3ad_get_active_agg_info(struct bonding *bond, struct ad_info *ad_info);
301 int __bond_3ad_get_active_agg_info(struct bonding *bond,
303 int bond_3ad_lacpdu_recv(const struct sk_buff *skb, struct bonding *bond,
305 int bond_3ad_set_carrier(struct bonding *bond);
306 void bond_3ad_update_lacp_active(struct bonding *bond);
307 void bond_3ad_update_lacp_rate(struct bonding *bond);
308 void bond_3ad_update_ad_actor_settings(struct bonding *bond);
Dbond_options.h100 int (*set)(struct bonding *bond, const struct bond_opt_value *val);
103 int __bond_opt_set(struct bonding *bond, unsigned int option,
105 int __bond_opt_set_notify(struct bonding *bond, unsigned int option,
107 int bond_opt_tryset_rtnl(struct bonding *bond, unsigned int option, char *buf);
132 void bond_option_arp_ip_targets_clear(struct bonding *bond);
/Linux-v5.15/drivers/iommu/arm/arm-smmu-v3/
Darm-smmu-v3-sva.c311 struct arm_smmu_bond *bond; in __arm_smmu_sva_bind() local
320 list_for_each_entry(bond, &master->bonds, list) { in __arm_smmu_sva_bind()
321 if (bond->mm == mm) { in __arm_smmu_sva_bind()
322 refcount_inc(&bond->refs); in __arm_smmu_sva_bind()
323 return &bond->sva; in __arm_smmu_sva_bind()
327 bond = kzalloc(sizeof(*bond), GFP_KERNEL); in __arm_smmu_sva_bind()
328 if (!bond) in __arm_smmu_sva_bind()
336 bond->mm = mm; in __arm_smmu_sva_bind()
337 bond->sva.dev = dev; in __arm_smmu_sva_bind()
338 refcount_set(&bond->refs, 1); in __arm_smmu_sva_bind()
[all …]
/Linux-v5.15/drivers/net/ethernet/mellanox/mlx5/core/en/rep/
Dbond.c42 list_for_each_entry(cur, &uplink_priv->bond->metadata_list, list) { in mlx5e_lookup_rep_bond_metadata()
107 list_add(&mdata->list, &rpriv->uplink_priv.bond->metadata_list); in mlx5e_rep_bond_enslave()
322 uplink_priv->bond = kvzalloc(sizeof(*uplink_priv->bond), GFP_KERNEL); in mlx5e_rep_bond_init()
323 if (!uplink_priv->bond) { in mlx5e_rep_bond_init()
328 INIT_LIST_HEAD(&uplink_priv->bond->metadata_list); in mlx5e_rep_bond_init()
329 uplink_priv->bond->nb.notifier_call = mlx5e_rep_esw_bond_netevent; in mlx5e_rep_bond_init()
331 &uplink_priv->bond->nb, in mlx5e_rep_bond_init()
332 &uplink_priv->bond->nn); in mlx5e_rep_bond_init()
335 kvfree(uplink_priv->bond); in mlx5e_rep_bond_init()
336 uplink_priv->bond = NULL; in mlx5e_rep_bond_init()
[all …]
/Linux-v5.15/tools/testing/selftests/bpf/prog_tests/
Dxdp_bonding.c387 int veth, bond, err; in test_xdp_bonding_attach() local
397 bond = if_nametoindex("bond"); in test_xdp_bonding_attach()
398 if (!ASSERT_GE(bond, 0, "if_nametoindex bond")) in test_xdp_bonding_attach()
419 link2 = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_attach()
427 link = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_attach()
449 link = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_attach()
466 int bond, err; in test_xdp_bonding_nested() local
471 bond = if_nametoindex("bond"); in test_xdp_bonding_nested()
472 if (!ASSERT_GE(bond, 0, "if_nametoindex bond")) in test_xdp_bonding_nested()
489 link = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_nested()
/Linux-v5.15/drivers/net/ethernet/mscc/
Docelot.c1308 static u32 ocelot_get_bond_mask(struct ocelot *ocelot, struct net_device *bond, in ocelot_get_bond_mask() argument
1320 if (ocelot_port->bond == bond) { in ocelot_get_bond_mask()
1407 struct net_device *bond = ocelot_port->bond; in ocelot_apply_bridge_fwd_mask() local
1412 if (bond) { in ocelot_apply_bridge_fwd_mask()
1413 mask &= ~ocelot_get_bond_mask(ocelot, bond, in ocelot_apply_bridge_fwd_mask()
1717 if (!ocelot_port || !ocelot_port->bond) in ocelot_set_aggr_pgids()
1725 struct net_device *bond = ocelot->ports[lag]->bond; in ocelot_set_aggr_pgids() local
1730 if (!bond || (visited & BIT(lag))) in ocelot_set_aggr_pgids()
1733 bond_mask = ocelot_get_bond_mask(ocelot, bond, true); in ocelot_set_aggr_pgids()
1764 if (ocelot_port->bond == bond) in ocelot_set_aggr_pgids()
[all …]
Docelot_net.c1222 struct net_device *bond, in ocelot_netdevice_lag_join() argument
1233 err = ocelot_port_lag_join(ocelot, port, bond, info); in ocelot_netdevice_lag_join()
1239 bridge_dev = netdev_master_upper_dev_get(bond); in ocelot_netdevice_lag_join()
1243 err = ocelot_netdevice_bridge_join(dev, bond, bridge_dev, extack); in ocelot_netdevice_lag_join()
1250 ocelot_port_lag_leave(ocelot, port, bond); in ocelot_netdevice_lag_join()
1255 struct net_device *bond) in ocelot_netdevice_pre_lag_leave() argument
1259 bridge_dev = netdev_master_upper_dev_get(bond); in ocelot_netdevice_pre_lag_leave()
1263 ocelot_netdevice_pre_bridge_leave(dev, bond); in ocelot_netdevice_pre_lag_leave()
1267 struct net_device *bond) in ocelot_netdevice_lag_leave() argument
1275 ocelot_port_lag_leave(ocelot, port, bond); in ocelot_netdevice_lag_leave()
[all …]
/Linux-v5.15/Documentation/networking/
Dbonding.rst156 configuring a bond, it is recommended "tail -f /var/log/messages" be
229 - A slave is added to or removed from the bond
235 - The bond's administrative state changes to up
438 bond's MAC address in accordance with the selected policy.
445 bonding to set all slaves of an active-backup bond to
452 MAC address of the bond should always be the MAC
455 address of the bond changes during a failover.
480 address of the bond to be selected normally (normally
481 the MAC address of the first slave added to the bond).
484 slave is programmed with the bond's MAC address at
[all …]
/Linux-v5.15/tools/testing/selftests/drivers/net/mlxsw/
Dq_in_q_veto.sh113 ip link add name bond1 type bond mode 802.3ad
182 ip link add name bond1 type bond mode 802.3ad
230 ip link add name bond1 type bond mode 802.3ad
Dtc_sample.sh89 ip link add name ${h3}_bond type bond mode 802.3ad
110 ip link add name ${h4}_bond type bond mode 802.3ad
138 ip link add name ${rp3}_bond type bond mode 802.3ad
144 ip link add name ${rp4}_bond type bond mode 802.3ad
/Linux-v5.15/drivers/net/ethernet/mellanox/mlx4/
Den_netdev.c2902 struct mlx4_en_bond *bond = container_of(work, in mlx4_en_bond_work() local
2906 struct mlx4_dev *dev = bond->priv->mdev->dev; in mlx4_en_bond_work()
2908 if (bond->is_bonded) { in mlx4_en_bond_work()
2912 en_err(bond->priv, "Fail to bond device\n"); in mlx4_en_bond_work()
2915 err = mlx4_port_map_set(dev, &bond->port_map); in mlx4_en_bond_work()
2917 en_err(bond->priv, "Fail to set port map [%d][%d]: %d\n", in mlx4_en_bond_work()
2918 bond->port_map.port1, in mlx4_en_bond_work()
2919 bond->port_map.port2, in mlx4_en_bond_work()
2925 en_err(bond->priv, "Fail to unbond device\n"); in mlx4_en_bond_work()
2927 dev_put(bond->priv->dev); in mlx4_en_bond_work()
[all …]
/Linux-v5.15/Documentation/driver-api/iio/
Dhw-consumer.rst6 The Industrial I/O HW consumer offers a way to bond these IIO devices without
/Linux-v5.15/drivers/net/ethernet/mellanox/mlx5/core/
Den_rep.h97 struct mlx5e_rep_bond *bond; member
/Linux-v5.15/include/soc/mscc/
Docelot.h608 struct net_device *bond; member
808 struct net_device *bond,
811 struct net_device *bond);

12