• Home
  • Raw
  • Download

Lines Matching refs:slave

332 	struct slave *slave;  in bond_has_challenged_slaves()  local
335 bond_for_each_slave(bond, slave, i) { in bond_has_challenged_slaves()
336 if (slave->dev->features & NETIF_F_VLAN_CHALLENGED) { in bond_has_challenged_slaves()
338 slave->dev->name); in bond_has_challenged_slaves()
449 struct slave *slave; in bond_vlan_rx_register() local
454 bond_for_each_slave(bond, slave, i) { in bond_vlan_rx_register()
455 struct net_device *slave_dev = slave->dev; in bond_vlan_rx_register()
473 struct slave *slave; in bond_vlan_rx_add_vid() local
476 bond_for_each_slave(bond, slave, i) { in bond_vlan_rx_add_vid()
477 struct net_device *slave_dev = slave->dev; in bond_vlan_rx_add_vid()
502 struct slave *slave; in bond_vlan_rx_kill_vid() local
506 bond_for_each_slave(bond, slave, i) { in bond_vlan_rx_kill_vid()
507 struct net_device *slave_dev = slave->dev; in bond_vlan_rx_kill_vid()
598 struct slave *slave; in bond_set_carrier() local
607 bond_for_each_slave(bond, slave, i) { in bond_set_carrier()
608 if (slave->link == BOND_LINK_UP) { in bond_set_carrier()
631 static int bond_update_speed_duplex(struct slave *slave) in bond_update_speed_duplex() argument
633 struct net_device *slave_dev = slave->dev; in bond_update_speed_duplex()
638 slave->speed = SPEED_100; in bond_update_speed_duplex()
639 slave->duplex = DUPLEX_FULL; in bond_update_speed_duplex()
666 slave->speed = etool.speed; in bond_update_speed_duplex()
667 slave->duplex = etool.duplex; in bond_update_speed_duplex()
786 struct slave *slave; in bond_set_promiscuity() local
788 bond_for_each_slave(bond, slave, i) { in bond_set_promiscuity()
789 err = dev_set_promiscuity(slave->dev, inc); in bond_set_promiscuity()
810 struct slave *slave; in bond_set_allmulti() local
812 bond_for_each_slave(bond, slave, i) { in bond_set_allmulti()
813 err = dev_set_allmulti(slave->dev, inc); in bond_set_allmulti()
833 struct slave *slave; in bond_mc_add() local
835 bond_for_each_slave(bond, slave, i) { in bond_mc_add()
836 dev_mc_add(slave->dev, addr, alen, 0); in bond_mc_add()
853 struct slave *slave; in bond_mc_delete() local
855 bond_for_each_slave(bond, slave, i) { in bond_mc_delete()
856 dev_mc_delete(slave->dev, addr, alen, 0); in bond_mc_delete()
953 static void bond_mc_swap(struct bonding *bond, struct slave *new_active, struct slave *old_active) in bond_mc_swap()
1003 struct slave *new_active, in bond_do_fail_over_mac()
1004 struct slave *old_active) in bond_do_fail_over_mac()
1077 static struct slave *bond_find_best_slave(struct bonding *bond) in bond_find_best_slave()
1079 struct slave *new_active, *old_active; in bond_find_best_slave()
1080 struct slave *bestslave = NULL; in bond_find_best_slave()
1141 void bond_change_active_slave(struct bonding *bond, struct slave *new_active) in bond_change_active_slave()
1143 struct slave *old_active = bond->curr_active_slave; in bond_change_active_slave()
1236 struct slave *best_slave; in bond_select_active_slave()
1265 static void bond_attach_slave(struct bonding *bond, struct slave *new_slave) in bond_attach_slave()
1291 static void bond_detach_slave(struct bonding *bond, struct slave *slave) in bond_detach_slave() argument
1293 if (slave->next) { in bond_detach_slave()
1294 slave->next->prev = slave->prev; in bond_detach_slave()
1297 if (slave->prev) { in bond_detach_slave()
1298 slave->prev->next = slave->next; in bond_detach_slave()
1301 if (bond->first_slave == slave) { /* slave is the first slave */ in bond_detach_slave()
1303 bond->first_slave = slave->next; in bond_detach_slave()
1309 slave->next = NULL; in bond_detach_slave()
1310 slave->prev = NULL; in bond_detach_slave()
1337 struct slave *slave; in bond_compute_features() local
1352 bond_for_each_slave(bond, slave, i) { in bond_compute_features()
1354 slave->dev->features, in bond_compute_features()
1356 if (slave->dev->hard_header_len > max_hard_header_len) in bond_compute_features()
1357 max_hard_header_len = slave->dev->hard_header_len; in bond_compute_features()
1389 struct slave *new_slave = NULL; in bond_enslave()
1498 new_slave = kzalloc(sizeof(struct slave), GFP_KERNEL); in bond_enslave()
1790 struct slave *slave, *oldcurrent; in bond_release() local
1805 slave = bond_get_slave_by_dev(bond, slave_dev); in bond_release()
1806 if (!slave) { in bond_release()
1816 mac_addr_differ = memcmp(bond_dev->dev_addr, slave->perm_hwaddr, in bond_release()
1825 slave->perm_hwaddr, in bond_release()
1834 bond_3ad_unbind_slave(slave); in bond_release()
1840 (slave->state == BOND_STATE_ACTIVE) in bond_release()
1849 bond_detach_slave(bond, slave); in bond_release()
1853 if (bond->primary_slave == slave) { in bond_release()
1857 if (oldcurrent == slave) { in bond_release()
1868 bond_alb_deinit_slave(bond, slave); in bond_release()
1872 if (oldcurrent == slave) { in bond_release()
1954 memcpy(addr.sa_data, slave->perm_hwaddr, ETH_ALEN); in bond_release()
1963 kfree(slave); in bond_release()
2017 struct slave *slave; in bond_release_all() local
2033 while ((slave = bond->first_slave) != NULL) { in bond_release_all()
2038 bond_3ad_unbind_slave(slave); in bond_release_all()
2041 slave_dev = slave->dev; in bond_release_all()
2042 bond_detach_slave(bond, slave); in bond_release_all()
2054 bond_alb_deinit_slave(bond, slave); in bond_release_all()
2090 memcpy(addr.sa_data, slave->perm_hwaddr, ETH_ALEN); in bond_release_all()
2098 kfree(slave); in bond_release_all()
2147 struct slave *old_active = NULL; in bond_ioctl_change_active()
2148 struct slave *new_active = NULL; in bond_ioctl_change_active()
2210 struct slave *slave; in bond_slave_info_query() local
2219 bond_for_each_slave(bond, slave, i) { in bond_slave_info_query()
2229 strcpy(info->slave_name, slave->dev->name); in bond_slave_info_query()
2230 info->link = slave->link; in bond_slave_info_query()
2231 info->state = slave->state; in bond_slave_info_query()
2232 info->link_failure_count = slave->link_failure_count; in bond_slave_info_query()
2245 struct slave *slave; in bond_miimon_inspect() local
2248 bond_for_each_slave(bond, slave, i) { in bond_miimon_inspect()
2249 slave->new_link = BOND_LINK_NOCHANGE; in bond_miimon_inspect()
2251 link_state = bond_check_dev_link(bond, slave->dev, 0); in bond_miimon_inspect()
2253 switch (slave->link) { in bond_miimon_inspect()
2258 slave->link = BOND_LINK_FAIL; in bond_miimon_inspect()
2259 slave->delay = bond->params.downdelay; in bond_miimon_inspect()
2260 if (slave->delay) { in bond_miimon_inspect()
2267 ((slave->state == BOND_STATE_ACTIVE) ? in bond_miimon_inspect()
2269 slave->dev->name, in bond_miimon_inspect()
2278 slave->link = BOND_LINK_UP; in bond_miimon_inspect()
2279 slave->jiffies = jiffies; in bond_miimon_inspect()
2284 (bond->params.downdelay - slave->delay) * in bond_miimon_inspect()
2286 slave->dev->name); in bond_miimon_inspect()
2290 if (slave->delay <= 0) { in bond_miimon_inspect()
2291 slave->new_link = BOND_LINK_DOWN; in bond_miimon_inspect()
2296 slave->delay--; in bond_miimon_inspect()
2303 slave->link = BOND_LINK_BACK; in bond_miimon_inspect()
2304 slave->delay = bond->params.updelay; in bond_miimon_inspect()
2306 if (slave->delay) { in bond_miimon_inspect()
2310 bond->dev->name, slave->dev->name, in bond_miimon_inspect()
2317 slave->link = BOND_LINK_DOWN; in bond_miimon_inspect()
2322 (bond->params.updelay - slave->delay) * in bond_miimon_inspect()
2324 slave->dev->name); in bond_miimon_inspect()
2329 if (slave->delay <= 0) { in bond_miimon_inspect()
2330 slave->new_link = BOND_LINK_UP; in bond_miimon_inspect()
2335 slave->delay--; in bond_miimon_inspect()
2345 struct slave *slave; in bond_miimon_commit() local
2348 bond_for_each_slave(bond, slave, i) { in bond_miimon_commit()
2349 switch (slave->new_link) { in bond_miimon_commit()
2354 slave->link = BOND_LINK_UP; in bond_miimon_commit()
2355 slave->jiffies = jiffies; in bond_miimon_commit()
2359 slave->state = BOND_STATE_BACKUP; in bond_miimon_commit()
2362 slave->state = BOND_STATE_ACTIVE; in bond_miimon_commit()
2363 } else if (slave != bond->primary_slave) { in bond_miimon_commit()
2365 slave->state = BOND_STATE_BACKUP; in bond_miimon_commit()
2371 bond->dev->name, slave->dev->name); in bond_miimon_commit()
2375 bond_3ad_handle_link_change(slave, BOND_LINK_UP); in bond_miimon_commit()
2378 bond_alb_handle_link_change(bond, slave, in bond_miimon_commit()
2382 (slave == bond->primary_slave)) in bond_miimon_commit()
2388 if (slave->link_failure_count < UINT_MAX) in bond_miimon_commit()
2389 slave->link_failure_count++; in bond_miimon_commit()
2391 slave->link = BOND_LINK_DOWN; in bond_miimon_commit()
2395 bond_set_slave_inactive_flags(slave); in bond_miimon_commit()
2400 bond->dev->name, slave->dev->name); in bond_miimon_commit()
2403 bond_3ad_handle_link_change(slave, in bond_miimon_commit()
2408 bond_alb_handle_link_change(bond, slave, in bond_miimon_commit()
2411 if (slave == bond->curr_active_slave) in bond_miimon_commit()
2419 bond->dev->name, slave->new_link, in bond_miimon_commit()
2420 slave->dev->name); in bond_miimon_commit()
2421 slave->new_link = BOND_LINK_NOCHANGE; in bond_miimon_commit()
2557 static void bond_arp_send_all(struct bonding *bond, struct slave *slave) in bond_arp_send_all() argument
2572 bond_arp_send(slave->dev, ARPOP_REQUEST, targets[i], in bond_arp_send_all()
2602 bond_arp_send(slave->dev, ARPOP_REQUEST, targets[i], in bond_arp_send_all()
2620 bond_arp_send(slave->dev, ARPOP_REQUEST, targets[i], in bond_arp_send_all()
2643 struct slave *slave = bond->curr_active_slave; in bond_send_gratuitous_arp() local
2648 slave ? slave->dev->name : "NULL"); in bond_send_gratuitous_arp()
2650 if (!slave || !bond->send_grat_arp || in bond_send_gratuitous_arp()
2651 test_bit(__LINK_STATE_LINKWATCH_PENDING, &slave->dev->state)) in bond_send_gratuitous_arp()
2657 bond_arp_send(slave->dev, ARPOP_REPLY, bond->master_ip, in bond_send_gratuitous_arp()
2664 bond_arp_send(slave->dev, ARPOP_REPLY, vlan->vlan_ip, in bond_send_gratuitous_arp()
2670 static void bond_validate_arp(struct bonding *bond, struct slave *slave, __be32 sip, __be32 tip) in bond_validate_arp() argument
2681 slave->last_arp_rx = jiffies; in bond_validate_arp()
2690 struct slave *slave; in bond_arp_rcv() local
2708 slave = bond_get_slave_by_dev(bond, orig_dev); in bond_arp_rcv()
2709 if (!slave || !slave_do_arp_validate(bond, slave)) in bond_arp_rcv()
2731 bond->dev->name, slave->dev->name, slave->state, in bond_arp_rcv()
2732 bond->params.arp_validate, slave_do_arp_validate(bond, slave), in bond_arp_rcv()
2743 if (slave->state == BOND_STATE_ACTIVE) in bond_arp_rcv()
2744 bond_validate_arp(bond, slave, sip, tip); in bond_arp_rcv()
2746 bond_validate_arp(bond, slave, tip, sip); in bond_arp_rcv()
2766 struct slave *slave, *oldcurrent; in bond_loadbalance_arp_mon() local
2795 bond_for_each_slave(bond, slave, i) { in bond_loadbalance_arp_mon()
2796 if (slave->link != BOND_LINK_UP) { in bond_loadbalance_arp_mon()
2797 if (time_before_eq(jiffies, slave->dev->trans_start + delta_in_ticks) && in bond_loadbalance_arp_mon()
2798 time_before_eq(jiffies, slave->dev->last_rx + delta_in_ticks)) { in bond_loadbalance_arp_mon()
2800 slave->link = BOND_LINK_UP; in bond_loadbalance_arp_mon()
2801 slave->state = BOND_STATE_ACTIVE; in bond_loadbalance_arp_mon()
2813 slave->dev->name); in bond_loadbalance_arp_mon()
2819 slave->dev->name); in bond_loadbalance_arp_mon()
2829 if (time_after_eq(jiffies, slave->dev->trans_start + 2*delta_in_ticks) || in bond_loadbalance_arp_mon()
2830 (time_after_eq(jiffies, slave->dev->last_rx + 2*delta_in_ticks))) { in bond_loadbalance_arp_mon()
2832 slave->link = BOND_LINK_DOWN; in bond_loadbalance_arp_mon()
2833 slave->state = BOND_STATE_BACKUP; in bond_loadbalance_arp_mon()
2835 if (slave->link_failure_count < UINT_MAX) { in bond_loadbalance_arp_mon()
2836 slave->link_failure_count++; in bond_loadbalance_arp_mon()
2842 slave->dev->name); in bond_loadbalance_arp_mon()
2844 if (slave == oldcurrent) { in bond_loadbalance_arp_mon()
2857 if (IS_UP(slave->dev)) { in bond_loadbalance_arp_mon()
2858 bond_arp_send_all(bond, slave); in bond_loadbalance_arp_mon()
2887 struct slave *slave; in bond_ab_arp_inspect() local
2890 bond_for_each_slave(bond, slave, i) { in bond_ab_arp_inspect()
2891 slave->new_link = BOND_LINK_NOCHANGE; in bond_ab_arp_inspect()
2893 if (slave->link != BOND_LINK_UP) { in bond_ab_arp_inspect()
2894 if (time_before_eq(jiffies, slave_last_rx(bond, slave) + in bond_ab_arp_inspect()
2896 slave->new_link = BOND_LINK_UP; in bond_ab_arp_inspect()
2908 if (!time_after_eq(jiffies, slave->jiffies + in bond_ab_arp_inspect()
2925 if (slave->state == BOND_STATE_BACKUP && in bond_ab_arp_inspect()
2927 time_after(jiffies, slave_last_rx(bond, slave) + in bond_ab_arp_inspect()
2929 slave->new_link = BOND_LINK_DOWN; in bond_ab_arp_inspect()
2939 if ((slave->state == BOND_STATE_ACTIVE) && in bond_ab_arp_inspect()
2940 (time_after_eq(jiffies, slave->dev->trans_start + in bond_ab_arp_inspect()
2942 (time_after_eq(jiffies, slave_last_rx(bond, slave) in bond_ab_arp_inspect()
2944 slave->new_link = BOND_LINK_DOWN; in bond_ab_arp_inspect()
2972 struct slave *slave; in bond_ab_arp_commit() local
2975 bond_for_each_slave(bond, slave, i) { in bond_ab_arp_commit()
2976 switch (slave->new_link) { in bond_ab_arp_commit()
2984 time_before_eq(jiffies, slave->dev->trans_start + in bond_ab_arp_commit()
2986 slave->link = BOND_LINK_UP; in bond_ab_arp_commit()
2987 bond_change_active_slave(bond, slave); in bond_ab_arp_commit()
2993 bond->dev->name, slave->dev->name); in bond_ab_arp_commit()
2995 } else if (bond->curr_active_slave != slave) { in bond_ab_arp_commit()
3002 slave->link = BOND_LINK_UP; in bond_ab_arp_commit()
3003 bond_set_slave_inactive_flags(slave); in bond_ab_arp_commit()
3008 bond->dev->name, slave->dev->name); in bond_ab_arp_commit()
3016 if (slave->link_failure_count < UINT_MAX) in bond_ab_arp_commit()
3017 slave->link_failure_count++; in bond_ab_arp_commit()
3019 slave->link = BOND_LINK_DOWN; in bond_ab_arp_commit()
3021 if (slave == bond->curr_active_slave) { in bond_ab_arp_commit()
3025 bond->dev->name, slave->dev->name); in bond_ab_arp_commit()
3027 bond_set_slave_inactive_flags(slave); in bond_ab_arp_commit()
3040 } else if (slave->state == BOND_STATE_BACKUP) { in bond_ab_arp_commit()
3043 bond->dev->name, slave->dev->name); in bond_ab_arp_commit()
3045 bond_set_slave_inactive_flags(slave); in bond_ab_arp_commit()
3052 bond->dev->name, slave->new_link, in bond_ab_arp_commit()
3053 slave->dev->name); in bond_ab_arp_commit()
3078 struct slave *slave; in bond_ab_arp_probe() local
3110 bond_for_each_slave_from(bond, slave, i, bond->current_arp_slave->next) { in bond_ab_arp_probe()
3111 if (IS_UP(slave->dev)) { in bond_ab_arp_probe()
3112 slave->link = BOND_LINK_BACK; in bond_ab_arp_probe()
3113 bond_set_slave_active_flags(slave); in bond_ab_arp_probe()
3114 bond_arp_send_all(bond, slave); in bond_ab_arp_probe()
3115 slave->jiffies = jiffies; in bond_ab_arp_probe()
3116 bond->current_arp_slave = slave; in bond_ab_arp_probe()
3127 if (slave->link == BOND_LINK_UP) { in bond_ab_arp_probe()
3128 slave->link = BOND_LINK_DOWN; in bond_ab_arp_probe()
3129 if (slave->link_failure_count < UINT_MAX) in bond_ab_arp_probe()
3130 slave->link_failure_count++; in bond_ab_arp_probe()
3132 bond_set_slave_inactive_flags(slave); in bond_ab_arp_probe()
3136 bond->dev->name, slave->dev->name); in bond_ab_arp_probe()
3199 struct slave *slave; in bond_info_seq_start() local
3210 bond_for_each_slave(bond, slave, i) { in bond_info_seq_start()
3212 return slave; in bond_info_seq_start()
3222 struct slave *slave = v; in bond_info_seq_next() local
3229 slave = slave->next; in bond_info_seq_next()
3231 return (slave == bond->first_slave) ? NULL : slave; in bond_info_seq_next()
3245 struct slave *curr; in bond_info_show_master()
3335 static void bond_info_show_slave(struct seq_file *seq, const struct slave *slave) in bond_info_show_slave() argument
3339 seq_printf(seq, "\nSlave Interface: %s\n", slave->dev->name); in bond_info_show_slave()
3341 (slave->link == BOND_LINK_UP) ? "up" : "down"); in bond_info_show_slave()
3343 slave->link_failure_count); in bond_info_show_slave()
3345 seq_printf(seq, "Permanent HW addr: %pM\n", slave->perm_hwaddr); in bond_info_show_slave()
3349 = SLAVE_AD_INFO(slave).port.aggregator; in bond_info_show_slave()
3541 struct slave *slave; in bond_slave_netdev_event() local
3543 slave = bond_get_slave_by_dev(bond, slave_dev); in bond_slave_netdev_event()
3544 if (slave) { in bond_slave_netdev_event()
3545 u16 old_speed = slave->speed; in bond_slave_netdev_event()
3546 u16 old_duplex = slave->duplex; in bond_slave_netdev_event()
3548 bond_update_speed_duplex(slave); in bond_slave_netdev_event()
3553 if (old_speed != slave->speed) in bond_slave_netdev_event()
3554 bond_3ad_adapter_speed_changed(slave); in bond_slave_netdev_event()
3555 if (old_duplex != slave->duplex) in bond_slave_netdev_event()
3556 bond_3ad_adapter_duplex_changed(slave); in bond_slave_netdev_event()
3898 struct slave *slave; in bond_get_stats() local
3905 bond_for_each_slave(bond, slave, i) { in bond_get_stats()
3906 const struct net_device_stats *sstats = dev_get_stats(slave->dev); in bond_get_stats()
4125 struct slave *slave = bond->first_slave; in bond_neigh_setup() local
4127 if (slave) { in bond_neigh_setup()
4129 = slave->dev->netdev_ops; in bond_neigh_setup()
4131 return slave_ops->ndo_neigh_setup(slave->dev, parms); in bond_neigh_setup()
4142 struct slave *slave, *stop_at; in bond_change_mtu() local
4164 bond_for_each_slave(bond, slave, i) { in bond_change_mtu()
4165 pr_debug("s %p s->p %p c_m %p\n", slave, in bond_change_mtu()
4166 slave->prev, slave->dev->netdev_ops->ndo_change_mtu); in bond_change_mtu()
4168 res = dev_set_mtu(slave->dev, new_mtu); in bond_change_mtu()
4179 pr_debug("err %d %s\n", res, slave->dev->name); in bond_change_mtu()
4190 stop_at = slave; in bond_change_mtu()
4191 bond_for_each_slave_from_to(bond, slave, i, bond->first_slave, stop_at) { in bond_change_mtu()
4194 tmp_res = dev_set_mtu(slave->dev, bond_dev->mtu); in bond_change_mtu()
4197 slave->dev->name); in bond_change_mtu()
4215 struct slave *slave, *stop_at; in bond_set_mac_address() local
4251 bond_for_each_slave(bond, slave, i) { in bond_set_mac_address()
4252 const struct net_device_ops *slave_ops = slave->dev->netdev_ops; in bond_set_mac_address()
4253 pr_debug("slave %p %s\n", slave, slave->dev->name); in bond_set_mac_address()
4257 pr_debug("EOPNOTSUPP %s\n", slave->dev->name); in bond_set_mac_address()
4261 res = dev_set_mac_address(slave->dev, addr); in bond_set_mac_address()
4269 pr_debug("err %d %s\n", res, slave->dev->name); in bond_set_mac_address()
4283 stop_at = slave; in bond_set_mac_address()
4284 bond_for_each_slave_from_to(bond, slave, i, bond->first_slave, stop_at) { in bond_set_mac_address()
4287 tmp_res = dev_set_mac_address(slave->dev, &tmp_sa); in bond_set_mac_address()
4290 slave->dev->name); in bond_set_mac_address()
4300 struct slave *slave, *start_at; in bond_xmit_roundrobin() local
4315 bond_for_each_slave(bond, slave, i) { in bond_xmit_roundrobin()
4322 start_at = slave; in bond_xmit_roundrobin()
4323 bond_for_each_slave_from(bond, slave, i, start_at) { in bond_xmit_roundrobin()
4324 if (IS_UP(slave->dev) && in bond_xmit_roundrobin()
4325 (slave->link == BOND_LINK_UP) && in bond_xmit_roundrobin()
4326 (slave->state == BOND_STATE_ACTIVE)) { in bond_xmit_roundrobin()
4327 res = bond_dev_queue_xmit(bond, skb, slave->dev); in bond_xmit_roundrobin()
4381 struct slave *slave, *start_at; in bond_xmit_xor() local
4394 bond_for_each_slave(bond, slave, i) { in bond_xmit_xor()
4401 start_at = slave; in bond_xmit_xor()
4403 bond_for_each_slave_from(bond, slave, i, start_at) { in bond_xmit_xor()
4404 if (IS_UP(slave->dev) && in bond_xmit_xor()
4405 (slave->link == BOND_LINK_UP) && in bond_xmit_xor()
4406 (slave->state == BOND_STATE_ACTIVE)) { in bond_xmit_xor()
4407 res = bond_dev_queue_xmit(bond, skb, slave->dev); in bond_xmit_xor()
4427 struct slave *slave, *start_at; in bond_xmit_broadcast() local
4446 bond_for_each_slave_from(bond, slave, i, start_at) { in bond_xmit_broadcast()
4447 if (IS_UP(slave->dev) && in bond_xmit_broadcast()
4448 (slave->link == BOND_LINK_UP) && in bond_xmit_broadcast()
4449 (slave->state == BOND_STATE_ACTIVE)) { in bond_xmit_broadcast()
4466 tx_dev = slave->dev; in bond_xmit_broadcast()