batman-adv: fix logic error in batadv_v_ogm_forward

Message ID 1455273335-27063-1-git-send-email-sw@simonwunderlich.de (mailing list archive)
State Accepted, archived
Commit ef30ba92e5bba3a1c63f837814b6bcb28559d315
Headers

Commit Message

Simon Wunderlich Feb. 12, 2016, 10:35 a.m. UTC
  From: Simon Wunderlich <simon.wunderlich@open-mesh.com>

My latest restructure attempt of the BATMAN v forward function
introduced a regression, causing kernel crashes when an OGM is
forwarded. This patch fixes it.

Fixes: 30c96bc787 ("batman-adv: move and restructure
batadv_v_ogm_forward")
Reported-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Signed-off-by: Simon Wunderlich <simon.wunderlich@open-mesh.com>
---
 net/batman-adv/bat_v_ogm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Sven Eckelmann Feb. 15, 2016, 8:30 a.m. UTC | #1
On Friday 12 February 2016 11:35:35 Simon Wunderlich wrote:
> From: Simon Wunderlich <simon.wunderlich@open-mesh.com>
> 
> My latest restructure attempt of the BATMAN v forward function
> introduced a regression, causing kernel crashes when an OGM is
> forwarded. This patch fixes it.
> 
> Fixes: 30c96bc787 ("batman-adv: move and restructure
> batadv_v_ogm_forward")
> Reported-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
> Signed-off-by: Simon Wunderlich <simon.wunderlich@open-mesh.com>

Thanks for the fast update. It fixes the problem in my setup

Tested-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>

> ---
>  net/batman-adv/bat_v_ogm.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/batman-adv/bat_v_ogm.c b/net/batman-adv/bat_v_ogm.c
> index 1b2399e..4155fa5 100644
> --- a/net/batman-adv/bat_v_ogm.c
> +++ b/net/batman-adv/bat_v_ogm.c
> @@ -309,7 +309,7 @@ static void batadv_v_ogm_forward(struct batadv_priv *bat_priv,
>  	u16 tvlv_len;
>  
>  	/* only forward for specific interfaces, not for the default one. */
> -	if (if_outgoing != BATADV_IF_DEFAULT)
> +	if (if_outgoing == BATADV_IF_DEFAULT)
>  		goto out;
>  
>  	orig_ifinfo = batadv_orig_ifinfo_new(orig_node, if_outgoing);
>
  
Marek Lindner Feb. 16, 2016, 9:07 a.m. UTC | #2
On Monday, February 15, 2016 09:30:09 Sven Eckelmann wrote:
> On Friday 12 February 2016 11:35:35 Simon Wunderlich wrote:
> > From: Simon Wunderlich <simon.wunderlich@open-mesh.com>
> >
> > My latest restructure attempt of the BATMAN v forward function
> > introduced a regression, causing kernel crashes when an OGM is
> > forwarded. This patch fixes it.
> >
> > Fixes: 30c96bc787 ("batman-adv: move and restructure
> > batadv_v_ogm_forward")
> > Reported-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
> > Signed-off-by: Simon Wunderlich <simon.wunderlich@open-mesh.com>
> 
> Thanks for the fast update. It fixes the problem in my setup
> 
> Tested-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>

Applied in revision ef30ba9.

Thanks,
Marek
  

Patch

diff --git a/net/batman-adv/bat_v_ogm.c b/net/batman-adv/bat_v_ogm.c
index 1b2399e..4155fa5 100644
--- a/net/batman-adv/bat_v_ogm.c
+++ b/net/batman-adv/bat_v_ogm.c
@@ -309,7 +309,7 @@  static void batadv_v_ogm_forward(struct batadv_priv *bat_priv,
 	u16 tvlv_len;
 
 	/* only forward for specific interfaces, not for the default one. */
-	if (if_outgoing != BATADV_IF_DEFAULT)
+	if (if_outgoing == BATADV_IF_DEFAULT)
 		goto out;
 
 	orig_ifinfo = batadv_orig_ifinfo_new(orig_node, if_outgoing);