Lines Matching refs:gw

85 	gw_node = rcu_dereference(bat_priv->gw.curr_gw);  in batadv_gw_get_selected_gw_node()
133 spin_lock_bh(&bat_priv->gw.list_lock); in batadv_gw_select()
138 curr_gw_node = rcu_replace_pointer(bat_priv->gw.curr_gw, new_gw_node, in batadv_gw_select()
143 spin_unlock_bh(&bat_priv->gw.list_lock); in batadv_gw_select()
159 atomic_set(&bat_priv->gw.reselect, 1); in batadv_gw_reselect()
174 if (atomic_read(&bat_priv->gw.mode) != BATADV_GW_MODE_CLIENT) in batadv_gw_check_client_stop()
206 if (atomic_read(&bat_priv->gw.mode) != BATADV_GW_MODE_CLIENT) in batadv_gw_election()
209 if (!bat_priv->algo_ops->gw.get_best_gw_node) in batadv_gw_election()
214 if (!batadv_atomic_dec_not_zero(&bat_priv->gw.reselect) && curr_gw) in batadv_gw_election()
221 next_gw = bat_priv->algo_ops->gw.get_best_gw_node(bat_priv); in batadv_gw_election()
295 if (!bat_priv->algo_ops->gw.is_eligible) in batadv_gw_check_election()
306 if (!bat_priv->algo_ops->gw.is_eligible(bat_priv, curr_gw_orig, in batadv_gw_check_election()
331 lockdep_assert_held(&bat_priv->gw.list_lock); in batadv_gw_node_add()
348 hlist_add_head_rcu(&gw_node->list, &bat_priv->gw.gateway_list); in batadv_gw_node_add()
349 bat_priv->gw.generation++; in batadv_gw_node_add()
376 hlist_for_each_entry_rcu(gw_node_tmp, &bat_priv->gw.gateway_list, in batadv_gw_node_get()
405 spin_lock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_update()
409 spin_unlock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_update()
412 spin_unlock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_update()
441 spin_lock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_update()
445 bat_priv->gw.generation++; in batadv_gw_node_update()
447 spin_unlock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_update()
485 spin_lock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_free()
487 &bat_priv->gw.gateway_list, list) { in batadv_gw_node_free()
490 bat_priv->gw.generation++; in batadv_gw_node_free()
492 spin_unlock_bh(&bat_priv->gw.list_lock); in batadv_gw_node_free()
530 if (!bat_priv->algo_ops->gw.dump) { in batadv_gw_dump()
535 bat_priv->algo_ops->gw.dump(msg, cb, bat_priv); in batadv_gw_dump()
711 switch (atomic_read(&bat_priv->gw.mode)) { in batadv_gw_out_of_range()