diff options
author | Marek Lindner <lindner_marek@yahoo.de> | 2012-08-04 04:13:26 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-08-06 20:23:46 (GMT) |
commit | caa0bf648cd20a2efbb6558531711e9ce2c6e948 (patch) | |
tree | 45b34e1111085cbab011bd85d6fb1a785619e28a /net/batman-adv | |
parent | 25099335944a23db75d4916644122c746684e093 (diff) | |
download | linux-caa0bf648cd20a2efbb6558531711e9ce2c6e948.tar.xz |
batman-adv: select an internet gateway if none was chosen
This is a regression introduced by: 2265c141086474bbae55a5bb3afa1ebb78ccaa7c
("batman-adv: gateway election code refactoring")
Reported-by: Nicolás Echániz <nicoechaniz@codigosur.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Acked-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/batman-adv')
-rw-r--r-- | net/batman-adv/gateway_client.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/batman-adv/gateway_client.c b/net/batman-adv/gateway_client.c index b421cc4..fc866f2 100644 --- a/net/batman-adv/gateway_client.c +++ b/net/batman-adv/gateway_client.c @@ -200,11 +200,11 @@ void batadv_gw_election(struct batadv_priv *bat_priv) if (atomic_read(&bat_priv->gw_mode) != BATADV_GW_MODE_CLIENT) goto out; - if (!batadv_atomic_dec_not_zero(&bat_priv->gw_reselect)) - goto out; - curr_gw = batadv_gw_get_selected_gw_node(bat_priv); + if (!batadv_atomic_dec_not_zero(&bat_priv->gw_reselect) && curr_gw) + goto out; + next_gw = batadv_gw_get_best_gw_node(bat_priv); if (curr_gw == next_gw) |