In tt_global_add() the ROAM flag is improperly unset. This makes the next check fail and so preventing emptying the old originator_list for the involved tt_global_entry
This was introduced by ("batman-adv: roaming handling mechanism redesign")
Signed-off-by: Antonio Quartulli ordex@autistici.org ---
This patch should go to next so that it can be squashed with the one introducing the "broken" change.
translation-table.c | 8 -------- 1 file changed, 8 deletions(-)
diff --git a/translation-table.c b/translation-table.c index 6fecb94..f30360c 100644 --- a/translation-table.c +++ b/translation-table.c @@ -860,14 +860,6 @@ int batadv_tt_global_add(struct batadv_priv *bat_priv, */ common->flags &= ~BATADV_TT_CLIENT_TEMP;
- /* if this is a normal add, possibly unset the ROAM flag. This - * flag could have been set before because the client was - * roaming, but now that the node got the ADD event, the flag - * can be unset - */ - if (!(flags & BATADV_TT_CLIENT_ROAM)) - common->flags &= ~BATADV_TT_CLIENT_ROAM; - /* If there is the BATADV_TT_CLIENT_ROAM flag set, there is only * one originator left in the list and we previously received a * delete + roaming change for this originator.