Home
last modified time | relevance | path

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

12

/Linux-v6.1/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.c56 static void rlb_purge_src_ip(struct bonding *bond, struct arp_pkt *arp);
57 static void rlb_src_unlink(struct bonding *bond, u32 index);
58 static void rlb_src_link(struct bonding *bond, u32 ip_src_hash,
93 static void __tlb_clear_slave(struct bonding *bond, struct slave *slave, in __tlb_clear_slave() argument
100 tx_hash_table = BOND_ALB_INFO(bond).tx_hashtbl; in __tlb_clear_slave()
116 static void tlb_clear_slave(struct bonding *bond, struct slave *slave, in tlb_clear_slave() argument
119 spin_lock_bh(&bond->mode_lock); in tlb_clear_slave()
120 __tlb_clear_slave(bond, slave, save_load); in tlb_clear_slave()
121 spin_unlock_bh(&bond->mode_lock); in tlb_clear_slave()
125 static int tlb_initialize(struct bonding *bond) in tlb_initialize() argument
[all …]
Dbond_main.c264 static bool bond_time_in_interval(struct bonding *bond, unsigned long last_act,
295 netdev_tx_t bond_dev_queue_xmit(struct bonding *bond, struct sk_buff *skb, in bond_dev_queue_xmit() argument
304 if (unlikely(netpoll_tx_running(bond->dev))) in bond_dev_queue_xmit()
305 return bond_netpoll_send_skb(bond_get_slave_by_dev(bond, slave_dev), skb); in bond_dev_queue_xmit()
310 bool bond_sk_check(struct bonding *bond) in bond_sk_check() argument
312 switch (BOND_MODE(bond)) { in bond_sk_check()
315 if (bond->params.xmit_policy == BOND_XMIT_POLICY_LAYER34) in bond_sk_check()
323 static bool bond_xdp_check(struct bonding *bond) in bond_xdp_check() argument
325 switch (BOND_MODE(bond)) { in bond_xdp_check()
334 if (bond->params.xmit_policy != BOND_XMIT_POLICY_VLAN_SRCMAC) in bond_xdp_check()
[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 += sysfs_emit_at(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_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_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.c60 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in bond_fill_slave_info()
144 struct bonding *bond = netdev_priv(bond_dev); in bond_slave_changelink() local
159 err = __bond_opt_set(bond, BOND_OPT_QUEUE_ID, &newval, in bond_slave_changelink()
169 err = __bond_opt_set(bond, BOND_OPT_PRIO, &newval, in bond_slave_changelink()
182 struct bonding *bond = netdev_priv(bond_dev); in bond_changelink() local
194 err = __bond_opt_set(bond, BOND_OPT_MODE, &newval, in bond_changelink()
212 err = __bond_opt_set(bond, BOND_OPT_ACTIVE_SLAVE, &newval, in bond_changelink()
221 err = __bond_opt_set(bond, BOND_OPT_MIIMON, &newval, in bond_changelink()
230 err = __bond_opt_set(bond, BOND_OPT_UPDELAY, &newval, in bond_changelink()
239 err = __bond_opt_set(bond, BOND_OPT_DOWNDELAY, &newval, in bond_changelink()
[all …]
Dbond_3ad.c145 struct bonding *bond = __get_bond_by_port(port); in __get_first_agg() local
150 if (bond == NULL) in __get_first_agg()
154 first_slave = bond_first_slave_rcu(bond); in __get_first_agg()
211 struct bonding *bond = __get_bond_by_port(port); in __get_agg_selection_mode() local
213 if (bond == NULL) in __get_agg_selection_mode()
216 return bond->params.ad_select; in __get_agg_selection_mode()
225 struct bonding *bond = __get_bond_by_port(port); in __check_agg_selection_timer() local
227 if (bond == NULL) in __check_agg_selection_timer()
230 return atomic_read(&BOND_AD_INFO(bond).agg_select_timer) ? 1 : 0; in __check_agg_selection_timer()
333 slave->bond->dev->name, in __get_link_speed()
[all …]
Dbond_sysfs_slave.c64 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in ad_aggregator_id_show()
79 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in ad_actor_oper_port_state_show()
94 if (BOND_MODE(slave->bond) == BOND_MODE_8023AD) { in ad_partner_oper_port_state_show()
/Linux-v6.1/include/net/
Dbonding.h53 #define BOND_MODE(bond) ((bond)->params.mode) argument
56 #define bond_slave_list(bond) (&(bond)->dev->adj_list.lower) argument
58 #define bond_has_slaves(bond) !list_empty(bond_slave_list(bond)) argument
61 #define bond_first_slave(bond) \ argument
62 (bond_has_slaves(bond) ? \
63 netdev_adjacent_get_private(bond_slave_list(bond)->next) : \
65 #define bond_last_slave(bond) \ argument
66 (bond_has_slaves(bond) ? \
67 netdev_adjacent_get_private(bond_slave_list(bond)->prev) : \
71 #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.h257 #define BOND_AD_INFO(bond) ((bond)->ad_info) argument
291 void bond_3ad_initialize(struct bonding *bond);
295 void bond_3ad_initiate_agg_selection(struct bonding *bond, int timeout);
298 int bond_3ad_get_active_agg_info(struct bonding *bond, struct ad_info *ad_info);
299 int __bond_3ad_get_active_agg_info(struct bonding *bond,
301 int bond_3ad_lacpdu_recv(const struct sk_buff *skb, struct bonding *bond,
303 int bond_3ad_set_carrier(struct bonding *bond);
304 void bond_3ad_update_lacp_active(struct bonding *bond);
305 void bond_3ad_update_lacp_rate(struct bonding *bond);
306 void bond_3ad_update_ad_actor_settings(struct bonding *bond);
Dbond_options.h118 int (*set)(struct bonding *bond, const struct bond_opt_value *val);
121 int __bond_opt_set(struct bonding *bond, unsigned int option,
124 int __bond_opt_set_notify(struct bonding *bond, unsigned int option,
126 int bond_opt_tryset_rtnl(struct bonding *bond, unsigned int option, char *buf);
159 void bond_option_arp_ip_targets_clear(struct bonding *bond);
161 void bond_option_ns_ip6_targets_clear(struct bonding *bond);
/Linux-v6.1/drivers/net/ethernet/microchip/lan966x/
Dlan966x_lag.c32 if (!port || !port->bond) in lan966x_lag_set_aggr_pgids()
40 struct net_device *bond = lan966x->ports[lag]->bond; in lan966x_lag_set_aggr_pgids() local
45 if (!bond || (visited & BIT(lag))) in lan966x_lag_set_aggr_pgids()
48 bond_mask = lan966x_lag_get_mask(lan966x, bond); in lan966x_lag_set_aggr_pgids()
82 if (port->bond == bond) in lan966x_lag_set_aggr_pgids()
102 bond_mask = lan966x_lag_get_mask(lan966x, port->bond); in lan966x_lag_set_port_ids()
121 struct net_device *bond, in lan966x_lag_port_join() argument
130 bond_mask = lan966x_lag_get_mask(lan966x, bond); in lan966x_lag_port_join()
134 port->bond = bond; in lan966x_lag_port_join()
146 if (lan966x_lag_first_port(port->bond, port->dev) && in lan966x_lag_port_join()
[all …]
Dlan966x_mac.c217 mac_entry->lag = port->bond ? true : false; in lan966x_mac_alloc_entry()
306 port->bond ?: port->dev); in lan966x_mac_add_entry()
482 port->bond ?: port->dev); in lan966x_mac_irq_process()
526 mac, vid, port->bond ?: port->dev); in lan966x_mac_irq_process()
/Linux-v6.1/drivers/iommu/arm/arm-smmu-v3/
Darm-smmu-v3-sva.c327 struct arm_smmu_bond *bond; in __arm_smmu_sva_bind() local
336 list_for_each_entry(bond, &master->bonds, list) { in __arm_smmu_sva_bind()
337 if (bond->mm == mm) { in __arm_smmu_sva_bind()
338 refcount_inc(&bond->refs); in __arm_smmu_sva_bind()
339 return &bond->sva; in __arm_smmu_sva_bind()
343 bond = kzalloc(sizeof(*bond), GFP_KERNEL); in __arm_smmu_sva_bind()
344 if (!bond) in __arm_smmu_sva_bind()
352 bond->mm = mm; in __arm_smmu_sva_bind()
353 bond->sva.dev = dev; in __arm_smmu_sva_bind()
354 refcount_set(&bond->refs, 1); in __arm_smmu_sva_bind()
[all …]
/Linux-v6.1/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()
280 struct mlx5e_rep_bond *bond; in mlx5e_rep_esw_bond_netevent() local
286 bond = container_of(nb, struct mlx5e_rep_bond, nb); in mlx5e_rep_esw_bond_netevent()
290 if (rpriv->uplink_priv.bond != bond) in mlx5e_rep_esw_bond_netevent()
318 uplink_priv->bond = kvzalloc(sizeof(*uplink_priv->bond), GFP_KERNEL); in mlx5e_rep_bond_init()
319 if (!uplink_priv->bond) { in mlx5e_rep_bond_init()
324 INIT_LIST_HEAD(&uplink_priv->bond->metadata_list); in mlx5e_rep_bond_init()
325 uplink_priv->bond->nb.notifier_call = mlx5e_rep_esw_bond_netevent; in mlx5e_rep_bond_init()
327 &uplink_priv->bond->nb, in mlx5e_rep_bond_init()
[all …]
/Linux-v6.1/tools/testing/selftests/drivers/net/bonding/
Dbond-break-lacpdu-tx.sh29 ip link del veth1-bond >/dev/null 2>&1 || :
30 ip link del veth2-bond >/dev/null 2>&1 || :
44 ip link add fbond type bond mode 4 miimon 200 xmit_hash_policy 1 \
52 ip link set fbond type bond ad_actor_sys_prio 65535
55 ip link add name veth1-bond type veth peer name veth1-end
56 ip link add name veth2-bond type veth peer name veth2-end
60 ip link set veth1-bond down master fbond
61 ip link set veth2-bond down master fbond
DMakefile5 bond-arp-interval-causes-panic.sh \
6 bond-break-lacpdu-tx.sh \
7 bond-lladdr-target.sh \
Dbond-arp-interval-causes-panic.sh34 ip netns exec client ip link add dev bond0 down type bond mode 1 \
43 ip netns exec client ip link set dev bond0 type bond mode 0 \
/Linux-v6.1/tools/testing/selftests/bpf/prog_tests/
Dxdp_bonding.c391 int veth, bond, err; in test_xdp_bonding_attach() local
401 bond = if_nametoindex("bond"); in test_xdp_bonding_attach()
402 if (!ASSERT_GE(bond, 0, "if_nametoindex bond")) in test_xdp_bonding_attach()
423 link2 = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_attach()
431 link = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_attach()
453 link = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_attach()
470 int bond, err; in test_xdp_bonding_nested() local
475 bond = if_nametoindex("bond"); in test_xdp_bonding_nested()
476 if (!ASSERT_GE(bond, 0, "if_nametoindex bond")) in test_xdp_bonding_nested()
493 link = bpf_program__attach_xdp(skeletons->xdp_dummy->progs.xdp_dummy_prog, bond); in test_xdp_bonding_nested()
/Linux-v6.1/drivers/net/ethernet/mscc/
Docelot.c1369 static u32 ocelot_get_bond_mask(struct ocelot *ocelot, struct net_device *bond) in ocelot_get_bond_mask() argument
1382 if (ocelot_port->bond == bond) in ocelot_get_bond_mask()
1392 int ocelot_bond_get_id(struct ocelot *ocelot, struct net_device *bond) in ocelot_bond_get_id() argument
1394 int bond_mask = ocelot_get_bond_mask(ocelot, bond); in ocelot_bond_get_id()
1429 if (cpu->bond) in ocelot_dsa_8021q_cpu_assigned_ports()
1430 mask &= ~ocelot_get_bond_mask(ocelot, cpu->bond); in ocelot_dsa_8021q_cpu_assigned_ports()
1446 if (cpu_port->bond) in ocelot_port_assigned_dsa_8021q_cpu_mask()
1447 return ocelot_get_bond_mask(ocelot, cpu_port->bond); in ocelot_port_assigned_dsa_8021q_cpu_mask()
1512 struct net_device *bond = ocelot_port->bond; in ocelot_apply_bridge_fwd_mask() local
1520 if (bond) in ocelot_apply_bridge_fwd_mask()
[all …]
Docelot_net.c1404 struct net_device *bond, in ocelot_netdevice_lag_join() argument
1415 err = ocelot_port_lag_join(ocelot, port, bond, info, extack); in ocelot_netdevice_lag_join()
1420 bridge_dev = netdev_master_upper_dev_get(bond); in ocelot_netdevice_lag_join()
1424 err = ocelot_netdevice_bridge_join(dev, bond, bridge_dev, extack); in ocelot_netdevice_lag_join()
1431 ocelot_port_lag_leave(ocelot, port, bond); in ocelot_netdevice_lag_join()
1436 struct net_device *bond) in ocelot_netdevice_pre_lag_leave() argument
1440 bridge_dev = netdev_master_upper_dev_get(bond); in ocelot_netdevice_pre_lag_leave()
1444 ocelot_netdevice_pre_bridge_leave(dev, bond); in ocelot_netdevice_pre_lag_leave()
1448 struct net_device *bond) in ocelot_netdevice_lag_leave() argument
1456 ocelot_port_lag_leave(ocelot, port, bond); in ocelot_netdevice_lag_leave()
[all …]
/Linux-v6.1/Documentation/networking/
Dbonding.rst156 configuring a bond, it is recommended "tail -f /var/log/messages" be
201 use the MAC of the bond itself. It is preferred to have the
230 - A slave is added to or removed from the bond
236 - The bond's administrative state changes to up
461 bond's MAC address in accordance with the selected policy.
468 bonding to set all slaves of an active-backup bond to
475 MAC address of the bond should always be the MAC
478 address of the bond changes during a failover.
503 address of the bond to be selected normally (normally
504 the MAC address of the first slave added to the bond).
[all …]
/Linux-v6.1/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

12