Acked-by: Simon Wunderlich sw@simonwunderlich.de Fixes: 29b9256e6631 ("batman-adv: consider outgoing interface in OGM sending") Signed-off-by: Linus Lüssing linus.luessing@c0d3.blue --- net/batman-adv/bat_iv_ogm.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/net/batman-adv/bat_iv_ogm.c b/net/batman-adv/bat_iv_ogm.c index 5a7923c..2076048 100644 --- a/net/batman-adv/bat_iv_ogm.c +++ b/net/batman-adv/bat_iv_ogm.c @@ -529,35 +529,26 @@ static void batadv_iv_ogm_emit(struct batadv_forw_packet *forw_packet) { struct net_device *soft_iface; struct batadv_priv *bat_priv; - struct batadv_hard_iface *primary_if = NULL;
if (!forw_packet->if_incoming) { pr_err("Error - can't forward packet: incoming iface not specified\n"); - goto out; + return; }
soft_iface = forw_packet->if_incoming->soft_iface; bat_priv = netdev_priv(soft_iface);
if (WARN_ON(!forw_packet->if_outgoing)) - goto out; + return;
if (WARN_ON(forw_packet->if_outgoing->soft_iface != soft_iface)) - goto out; + return;
if (forw_packet->if_incoming->if_status != BATADV_IF_ACTIVE) - goto out; - - primary_if = batadv_primary_if_get_selected(bat_priv); - if (!primary_if) - goto out; + return;
/* only for one specific outgoing interface */ batadv_iv_ogm_send_to_if(forw_packet, forw_packet->if_outgoing); - -out: - if (primary_if) - batadv_hardif_put(primary_if); }
/**
Hi,
On Tuesday 24 May 2016 17:18:06 Linus Lüssing wrote: [...]
diff --git a/net/batman-adv/bat_iv_ogm.c b/net/batman-adv/bat_iv_ogm.c index 5a7923c..2076048 100644 --- a/net/batman-adv/bat_iv_ogm.c +++ b/net/batman-adv/bat_iv_ogm.c @@ -529,35 +529,26 @@ static void batadv_iv_ogm_emit(struct batadv_forw_packet *forw_packet) { struct net_device *soft_iface; struct batadv_priv *bat_priv;
struct batadv_hard_iface *primary_if = NULL;
if (!forw_packet->if_incoming) { pr_err("Error - can't forward packet: incoming iface not specified\n");
goto out;
return;
}
soft_iface = forw_packet->if_incoming->soft_iface; bat_priv = netdev_priv(soft_iface);
if (WARN_ON(!forw_packet->if_outgoing))
goto out;
return;
if (WARN_ON(forw_packet->if_outgoing->soft_iface != soft_iface))
goto out;
return;
if (forw_packet->if_incoming->if_status != BATADV_IF_ACTIVE)
goto out;
- primary_if = batadv_primary_if_get_selected(bat_priv);
- if (!primary_if)
goto out;
return;
/* only for one specific outgoing interface */ batadv_iv_ogm_send_to_if(forw_packet, forw_packet->if_outgoing);
-out:
- if (primary_if)
batadv_hardif_put(primary_if);
}
/**
Now the variable bat_priv is not used anymore. :)
Kind regards, Sven
b.a.t.m.a.n@lists.open-mesh.org