Lines Matching refs:client_info
271 struct rlb_client_info *client_info; in rlb_update_entry_from_arp() local
277 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_update_entry_from_arp()
279 if ((client_info->assigned) && in rlb_update_entry_from_arp()
280 (client_info->ip_src == arp->ip_dst) && in rlb_update_entry_from_arp()
281 (client_info->ip_dst == arp->ip_src) && in rlb_update_entry_from_arp()
282 (!ether_addr_equal_64bits(client_info->mac_dst, arp->mac_src))) { in rlb_update_entry_from_arp()
284 ether_addr_copy(client_info->mac_dst, arp->mac_src); in rlb_update_entry_from_arp()
285 client_info->ntt = 1; in rlb_update_entry_from_arp()
443 static void rlb_update_client(struct rlb_client_info *client_info) in rlb_update_client() argument
447 if (!client_info->slave || !is_valid_ether_addr(client_info->mac_dst)) in rlb_update_client()
454 client_info->ip_dst, in rlb_update_client()
455 client_info->slave->dev, in rlb_update_client()
456 client_info->ip_src, in rlb_update_client()
457 client_info->mac_dst, in rlb_update_client()
458 client_info->slave->dev->dev_addr, in rlb_update_client()
459 client_info->mac_dst); in rlb_update_client()
461 netdev_err(client_info->slave->bond->dev, in rlb_update_client()
466 skb->dev = client_info->slave->dev; in rlb_update_client()
468 if (client_info->vlan_id) { in rlb_update_client()
470 client_info->vlan_id); in rlb_update_client()
481 struct rlb_client_info *client_info; in rlb_update_rx_clients() local
488 hash_index = client_info->used_next) { in rlb_update_rx_clients()
489 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_update_rx_clients()
490 if (client_info->ntt) { in rlb_update_rx_clients()
491 rlb_update_client(client_info); in rlb_update_rx_clients()
493 client_info->ntt = 0; in rlb_update_rx_clients()
509 struct rlb_client_info *client_info; in rlb_req_update_slave_clients() local
517 hash_index = client_info->used_next) { in rlb_req_update_slave_clients()
518 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_req_update_slave_clients()
520 if ((client_info->slave == slave) && in rlb_req_update_slave_clients()
521 is_valid_ether_addr(client_info->mac_dst)) { in rlb_req_update_slave_clients()
522 client_info->ntt = 1; in rlb_req_update_slave_clients()
541 struct rlb_client_info *client_info; in rlb_req_update_subnet_clients() local
548 hash_index = client_info->used_next) { in rlb_req_update_subnet_clients()
549 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_req_update_subnet_clients()
551 if (!client_info->slave) { in rlb_req_update_subnet_clients()
559 if ((client_info->ip_src == src_ip) && in rlb_req_update_subnet_clients()
560 !ether_addr_equal_64bits(client_info->slave->dev->dev_addr, in rlb_req_update_subnet_clients()
562 is_valid_ether_addr(client_info->mac_dst)) { in rlb_req_update_subnet_clients()
563 client_info->ntt = 1; in rlb_req_update_subnet_clients()
576 struct rlb_client_info *client_info; in rlb_choose_channel() local
584 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_choose_channel()
586 if (client_info->assigned) { in rlb_choose_channel()
587 if ((client_info->ip_src == arp->ip_src) && in rlb_choose_channel()
588 (client_info->ip_dst == arp->ip_dst)) { in rlb_choose_channel()
592 ether_addr_copy(client_info->mac_dst, arp->mac_dst); in rlb_choose_channel()
594 ether_addr_copy(client_info->mac_src, arp->mac_src); in rlb_choose_channel()
596 assigned_slave = client_info->slave; in rlb_choose_channel()
607 client_info->slave != curr_active_slave) { in rlb_choose_channel()
608 client_info->slave = curr_active_slave; in rlb_choose_channel()
609 rlb_update_client(client_info); in rlb_choose_channel()
617 if (!(client_info->assigned && in rlb_choose_channel()
618 client_info->ip_src == arp->ip_src)) { in rlb_choose_channel()
628 client_info->ip_src = arp->ip_src; in rlb_choose_channel()
629 client_info->ip_dst = arp->ip_dst; in rlb_choose_channel()
634 ether_addr_copy(client_info->mac_dst, arp->mac_dst); in rlb_choose_channel()
635 ether_addr_copy(client_info->mac_src, arp->mac_src); in rlb_choose_channel()
636 client_info->slave = assigned_slave; in rlb_choose_channel()
638 if (is_valid_ether_addr(client_info->mac_dst)) { in rlb_choose_channel()
639 client_info->ntt = 1; in rlb_choose_channel()
642 client_info->ntt = 0; in rlb_choose_channel()
645 if (vlan_get_tag(skb, &client_info->vlan_id)) in rlb_choose_channel()
646 client_info->vlan_id = 0; in rlb_choose_channel()
648 if (!client_info->assigned) { in rlb_choose_channel()
651 client_info->used_next = prev_tbl_head; in rlb_choose_channel()
656 client_info->assigned = 1; in rlb_choose_channel()
716 struct rlb_client_info *client_info; in rlb_rebalance() local
725 hash_index = client_info->used_next) { in rlb_rebalance()
726 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_rebalance()
728 if (assigned_slave && (client_info->slave != assigned_slave)) { in rlb_rebalance()
729 client_info->slave = assigned_slave; in rlb_rebalance()
730 if (!is_zero_ether_addr(client_info->mac_dst)) { in rlb_rebalance()
731 client_info->ntt = 1; in rlb_rebalance()