Lines Matching refs:client_info
251 struct rlb_client_info *client_info; in rlb_update_entry_from_arp() local
257 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_update_entry_from_arp()
259 if ((client_info->assigned) && in rlb_update_entry_from_arp()
260 (client_info->ip_src == arp->ip_dst) && in rlb_update_entry_from_arp()
261 (client_info->ip_dst == arp->ip_src) && in rlb_update_entry_from_arp()
262 (!ether_addr_equal_64bits(client_info->mac_dst, arp->mac_src))) { in rlb_update_entry_from_arp()
264 ether_addr_copy(client_info->mac_dst, arp->mac_src); in rlb_update_entry_from_arp()
265 client_info->ntt = 1; in rlb_update_entry_from_arp()
424 static void rlb_update_client(struct rlb_client_info *client_info) in rlb_update_client() argument
428 if (!client_info->slave || !is_valid_ether_addr(client_info->mac_dst)) in rlb_update_client()
435 client_info->ip_dst, in rlb_update_client()
436 client_info->slave->dev, in rlb_update_client()
437 client_info->ip_src, in rlb_update_client()
438 client_info->mac_dst, in rlb_update_client()
439 client_info->slave->dev->dev_addr, in rlb_update_client()
440 client_info->mac_dst); in rlb_update_client()
442 slave_err(client_info->slave->bond->dev, in rlb_update_client()
443 client_info->slave->dev, in rlb_update_client()
448 skb->dev = client_info->slave->dev; in rlb_update_client()
450 if (client_info->vlan_id) { in rlb_update_client()
452 client_info->vlan_id); in rlb_update_client()
463 struct rlb_client_info *client_info; in rlb_update_rx_clients() local
470 hash_index = client_info->used_next) { in rlb_update_rx_clients()
471 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_update_rx_clients()
472 if (client_info->ntt) { in rlb_update_rx_clients()
473 rlb_update_client(client_info); in rlb_update_rx_clients()
475 client_info->ntt = 0; in rlb_update_rx_clients()
491 struct rlb_client_info *client_info; in rlb_req_update_slave_clients() local
499 hash_index = client_info->used_next) { in rlb_req_update_slave_clients()
500 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_req_update_slave_clients()
502 if ((client_info->slave == slave) && in rlb_req_update_slave_clients()
503 is_valid_ether_addr(client_info->mac_dst)) { in rlb_req_update_slave_clients()
504 client_info->ntt = 1; in rlb_req_update_slave_clients()
523 struct rlb_client_info *client_info; in rlb_req_update_subnet_clients() local
530 hash_index = client_info->used_next) { in rlb_req_update_subnet_clients()
531 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_req_update_subnet_clients()
533 if (!client_info->slave) { in rlb_req_update_subnet_clients()
541 if ((client_info->ip_src == src_ip) && in rlb_req_update_subnet_clients()
542 !ether_addr_equal_64bits(client_info->slave->dev->dev_addr, in rlb_req_update_subnet_clients()
544 is_valid_ether_addr(client_info->mac_dst)) { in rlb_req_update_subnet_clients()
545 client_info->ntt = 1; in rlb_req_update_subnet_clients()
559 struct rlb_client_info *client_info; in rlb_choose_channel() local
567 client_info = &(bond_info->rx_hashtbl[hash_index]); in rlb_choose_channel()
569 if (client_info->assigned) { in rlb_choose_channel()
570 if ((client_info->ip_src == arp->ip_src) && in rlb_choose_channel()
571 (client_info->ip_dst == arp->ip_dst)) { in rlb_choose_channel()
575 ether_addr_copy(client_info->mac_dst, arp->mac_dst); in rlb_choose_channel()
577 ether_addr_copy(client_info->mac_src, arp->mac_src); in rlb_choose_channel()
579 assigned_slave = client_info->slave; in rlb_choose_channel()
590 client_info->slave != curr_active_slave) { in rlb_choose_channel()
591 client_info->slave = curr_active_slave; in rlb_choose_channel()
592 rlb_update_client(client_info); in rlb_choose_channel()
600 if (!(client_info->assigned && in rlb_choose_channel()
601 client_info->ip_src == arp->ip_src)) { in rlb_choose_channel()
611 client_info->ip_src = arp->ip_src; in rlb_choose_channel()
612 client_info->ip_dst = arp->ip_dst; in rlb_choose_channel()
617 ether_addr_copy(client_info->mac_dst, arp->mac_dst); in rlb_choose_channel()
618 ether_addr_copy(client_info->mac_src, arp->mac_src); in rlb_choose_channel()
619 client_info->slave = assigned_slave; in rlb_choose_channel()
621 if (is_valid_ether_addr(client_info->mac_dst)) { in rlb_choose_channel()
622 client_info->ntt = 1; in rlb_choose_channel()
625 client_info->ntt = 0; in rlb_choose_channel()
628 if (vlan_get_tag(skb, &client_info->vlan_id)) in rlb_choose_channel()
629 client_info->vlan_id = 0; in rlb_choose_channel()
631 if (!client_info->assigned) { in rlb_choose_channel()
635 client_info->used_next = prev_tbl_head; in rlb_choose_channel()
640 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()