From: Antonio Quartulli Date: Fri, 24 Aug 2012 15:54:07 +0000 (+0200) Subject: batman-adv: properly store the roaming time X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=fdf7932052209260ca2e7add4da4b74f57976336;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git batman-adv: properly store the roaming time in case of a new global entry added because of roaming, the roam_at field must be properly initiated with the current time. This value will be later use to purge this entry out on time out (if nobody claims it). Instead roam_at field is now set to zero in this situation leading to an immediate purging of the related entry. Signed-off-by: Antonio Quartulli --- diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c index 42a74e31b4ab..0ac39d5f77d8 100644 --- a/net/batman-adv/translation-table.c +++ b/net/batman-adv/translation-table.c @@ -726,6 +726,12 @@ int batadv_tt_global_add(struct batadv_priv *bat_priv, common->flags = flags; tt_global_entry->roam_at = 0; + /* node must store current time in case of roaming. This is + * needed to purge this entry out on timeout (if nobody claims + * it) + */ + if (flags & BATADV_TT_CLIENT_ROAM) + tt_global_entry->roam_at = jiffies; atomic_set(&common->refcount, 2); common->added_at = jiffies;