• Home
  • Raw
  • Download

Lines Matching refs:backbone_gw

37 			 struct batadv_bla_backbone_gw *backbone_gw);
109 batadv_backbone_gw_free_ref(struct batadv_bla_backbone_gw *backbone_gw) in batadv_backbone_gw_free_ref() argument
111 if (atomic_dec_and_test(&backbone_gw->refcount)) in batadv_backbone_gw_free_ref()
112 kfree_rcu(backbone_gw, rcu); in batadv_backbone_gw_free_ref()
122 batadv_backbone_gw_free_ref(claim->backbone_gw); in batadv_claim_free_rcu()
187 struct batadv_bla_backbone_gw search_entry, *backbone_gw; in batadv_backbone_hash_find() local
201 hlist_for_each_entry_rcu(backbone_gw, head, hash_entry) { in batadv_backbone_hash_find()
202 if (!batadv_compare_backbone_gw(&backbone_gw->hash_entry, in batadv_backbone_hash_find()
206 if (!atomic_inc_not_zero(&backbone_gw->refcount)) in batadv_backbone_hash_find()
209 backbone_gw_tmp = backbone_gw; in batadv_backbone_hash_find()
219 batadv_bla_del_backbone_claims(struct batadv_bla_backbone_gw *backbone_gw) in batadv_bla_del_backbone_claims() argument
228 hash = backbone_gw->bat_priv->bla.claim_hash; in batadv_bla_del_backbone_claims()
239 if (claim->backbone_gw != backbone_gw) in batadv_bla_del_backbone_claims()
249 backbone_gw->crc = BATADV_BLA_CRC_INIT; in batadv_bla_del_backbone_claims()
442 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_update_own_backbone_gw() local
444 backbone_gw = batadv_bla_get_backbone_gw(bat_priv, in batadv_bla_update_own_backbone_gw()
447 if (unlikely(!backbone_gw)) in batadv_bla_update_own_backbone_gw()
450 backbone_gw->lasttime = jiffies; in batadv_bla_update_own_backbone_gw()
451 batadv_backbone_gw_free_ref(backbone_gw); in batadv_bla_update_own_backbone_gw()
469 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_answer_request() local
475 backbone_gw = batadv_backbone_hash_find(bat_priv, in batadv_bla_answer_request()
478 if (!backbone_gw) in batadv_bla_answer_request()
488 if (claim->backbone_gw != backbone_gw) in batadv_bla_answer_request()
498 batadv_bla_send_announce(bat_priv, backbone_gw); in batadv_bla_answer_request()
499 batadv_backbone_gw_free_ref(backbone_gw); in batadv_bla_answer_request()
510 static void batadv_bla_send_request(struct batadv_bla_backbone_gw *backbone_gw) in batadv_bla_send_request() argument
513 batadv_bla_del_backbone_claims(backbone_gw); in batadv_bla_send_request()
515 batadv_dbg(BATADV_DBG_BLA, backbone_gw->bat_priv, in batadv_bla_send_request()
516 "Sending REQUEST to %pM\n", backbone_gw->orig); in batadv_bla_send_request()
519 batadv_bla_send_claim(backbone_gw->bat_priv, backbone_gw->orig, in batadv_bla_send_request()
520 backbone_gw->vid, BATADV_CLAIM_TYPE_REQUEST); in batadv_bla_send_request()
523 if (!atomic_read(&backbone_gw->request_sent)) { in batadv_bla_send_request()
524 atomic_inc(&backbone_gw->bat_priv->bla.num_requests); in batadv_bla_send_request()
525 atomic_set(&backbone_gw->request_sent, 1); in batadv_bla_send_request()
538 struct batadv_bla_backbone_gw *backbone_gw) in batadv_bla_send_announce() argument
544 crc = htons(backbone_gw->crc); in batadv_bla_send_announce()
547 batadv_bla_send_claim(bat_priv, mac, backbone_gw->vid, in batadv_bla_send_announce()
560 struct batadv_bla_backbone_gw *backbone_gw) in batadv_bla_add_claim() argument
579 claim->backbone_gw = backbone_gw; in batadv_bla_add_claim()
597 if (claim->backbone_gw == backbone_gw) in batadv_bla_add_claim()
605 claim->backbone_gw->crc ^= crc16(0, claim->addr, ETH_ALEN); in batadv_bla_add_claim()
606 batadv_backbone_gw_free_ref(claim->backbone_gw); in batadv_bla_add_claim()
609 atomic_inc(&backbone_gw->refcount); in batadv_bla_add_claim()
610 claim->backbone_gw = backbone_gw; in batadv_bla_add_claim()
612 backbone_gw->crc ^= crc16(0, claim->addr, ETH_ALEN); in batadv_bla_add_claim()
613 backbone_gw->lasttime = jiffies; in batadv_bla_add_claim()
640 claim->backbone_gw->crc ^= crc16(0, claim->addr, ETH_ALEN); in batadv_bla_del_claim()
651 struct batadv_bla_backbone_gw *backbone_gw; in batadv_handle_announce() local
657 backbone_gw = batadv_bla_get_backbone_gw(bat_priv, backbone_addr, vid, in batadv_handle_announce()
660 if (unlikely(!backbone_gw)) in batadv_handle_announce()
665 backbone_gw->lasttime = jiffies; in batadv_handle_announce()
670 BATADV_PRINT_VID(vid), backbone_gw->orig, crc); in batadv_handle_announce()
672 if (backbone_gw->crc != crc) { in batadv_handle_announce()
673 batadv_dbg(BATADV_DBG_BLA, backbone_gw->bat_priv, in batadv_handle_announce()
675 backbone_gw->orig, in batadv_handle_announce()
676 BATADV_PRINT_VID(backbone_gw->vid), in batadv_handle_announce()
677 backbone_gw->crc, crc); in batadv_handle_announce()
679 batadv_bla_send_request(backbone_gw); in batadv_handle_announce()
684 if (atomic_read(&backbone_gw->request_sent)) { in batadv_handle_announce()
685 atomic_dec(&backbone_gw->bat_priv->bla.num_requests); in batadv_handle_announce()
686 atomic_set(&backbone_gw->request_sent, 0); in batadv_handle_announce()
690 batadv_backbone_gw_free_ref(backbone_gw); in batadv_handle_announce()
724 struct batadv_bla_backbone_gw *backbone_gw; in batadv_handle_unclaim() local
732 backbone_gw = batadv_backbone_hash_find(bat_priv, backbone_addr, vid); in batadv_handle_unclaim()
734 if (!backbone_gw) in batadv_handle_unclaim()
740 claim_addr, BATADV_PRINT_VID(vid), backbone_gw->orig); in batadv_handle_unclaim()
743 batadv_backbone_gw_free_ref(backbone_gw); in batadv_handle_unclaim()
753 struct batadv_bla_backbone_gw *backbone_gw; in batadv_handle_claim() local
757 backbone_gw = batadv_bla_get_backbone_gw(bat_priv, backbone_addr, vid, in batadv_handle_claim()
760 if (unlikely(!backbone_gw)) in batadv_handle_claim()
764 batadv_bla_add_claim(bat_priv, claim_addr, vid, backbone_gw); in batadv_handle_claim()
771 batadv_backbone_gw_free_ref(backbone_gw); in batadv_handle_claim()
993 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_purge_backbone_gw() local
1009 hlist_for_each_entry_safe(backbone_gw, node_tmp, in batadv_bla_purge_backbone_gw()
1013 if (!batadv_has_timed_out(backbone_gw->lasttime, in batadv_bla_purge_backbone_gw()
1017 batadv_dbg(BATADV_DBG_BLA, backbone_gw->bat_priv, in batadv_bla_purge_backbone_gw()
1019 backbone_gw->orig); in batadv_bla_purge_backbone_gw()
1023 if (atomic_read(&backbone_gw->request_sent)) in batadv_bla_purge_backbone_gw()
1026 batadv_bla_del_backbone_claims(backbone_gw); in batadv_bla_purge_backbone_gw()
1028 hlist_del_rcu(&backbone_gw->hash_entry); in batadv_bla_purge_backbone_gw()
1029 batadv_backbone_gw_free_ref(backbone_gw); in batadv_bla_purge_backbone_gw()
1064 if (!batadv_compare_eth(claim->backbone_gw->orig, in batadv_bla_purge_claims()
1077 claim->backbone_gw->orig, in batadv_bla_purge_claims()
1096 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_update_orig_address() local
1124 hlist_for_each_entry_rcu(backbone_gw, head, hash_entry) { in batadv_bla_update_orig_address()
1126 if (!batadv_compare_eth(backbone_gw->orig, in batadv_bla_update_orig_address()
1130 ether_addr_copy(backbone_gw->orig, in batadv_bla_update_orig_address()
1135 batadv_bla_send_announce(bat_priv, backbone_gw); in batadv_bla_update_orig_address()
1151 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_periodic_work() local
1177 hlist_for_each_entry_rcu(backbone_gw, head, hash_entry) { in batadv_bla_periodic_work()
1178 if (!batadv_compare_eth(backbone_gw->orig, in batadv_bla_periodic_work()
1182 backbone_gw->lasttime = jiffies; in batadv_bla_periodic_work()
1184 batadv_bla_send_announce(bat_priv, backbone_gw); in batadv_bla_periodic_work()
1195 if (atomic_read(&backbone_gw->request_sent) == 0) in batadv_bla_periodic_work()
1198 if (!atomic_dec_and_test(&backbone_gw->wait_periods)) in batadv_bla_periodic_work()
1201 atomic_dec(&backbone_gw->bat_priv->bla.num_requests); in batadv_bla_periodic_work()
1202 atomic_set(&backbone_gw->request_sent, 0); in batadv_bla_periodic_work()
1363 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_is_backbone_gw_orig() local
1376 hlist_for_each_entry_rcu(backbone_gw, head, hash_entry) { in batadv_bla_is_backbone_gw_orig()
1377 if (batadv_compare_eth(backbone_gw->orig, orig) && in batadv_bla_is_backbone_gw_orig()
1378 backbone_gw->vid == vid) { in batadv_bla_is_backbone_gw_orig()
1403 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_is_backbone_gw() local
1416 backbone_gw = batadv_backbone_hash_find(orig_node->bat_priv, in batadv_bla_is_backbone_gw()
1418 if (!backbone_gw) in batadv_bla_is_backbone_gw()
1421 batadv_backbone_gw_free_ref(backbone_gw); in batadv_bla_is_backbone_gw()
1500 if (batadv_compare_eth(claim->backbone_gw->orig, in batadv_bla_rx()
1594 if (batadv_compare_eth(claim->backbone_gw->orig, in batadv_bla_tx()
1659 is_own = batadv_compare_eth(claim->backbone_gw->orig, in batadv_bla_claim_table_seq_print_text()
1663 claim->backbone_gw->orig, in batadv_bla_claim_table_seq_print_text()
1665 claim->backbone_gw->crc); in batadv_bla_claim_table_seq_print_text()
1680 struct batadv_bla_backbone_gw *backbone_gw; in batadv_bla_backbone_table_seq_print_text() local
1703 hlist_for_each_entry_rcu(backbone_gw, head, hash_entry) { in batadv_bla_backbone_table_seq_print_text()
1705 backbone_gw->lasttime); in batadv_bla_backbone_table_seq_print_text()
1709 is_own = batadv_compare_eth(backbone_gw->orig, in batadv_bla_backbone_table_seq_print_text()
1715 backbone_gw->orig, in batadv_bla_backbone_table_seq_print_text()
1716 BATADV_PRINT_VID(backbone_gw->vid), secs, in batadv_bla_backbone_table_seq_print_text()
1717 msecs, backbone_gw->crc); in batadv_bla_backbone_table_seq_print_text()