Staging: batman-adv: Avoid rounding issues for local hna timeout
authorLinus Lüssing <linus.luessing@web.de>
Fri, 25 Jun 2010 22:28:19 +0000 (00:28 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 8 Jul 2010 19:17:31 +0000 (12:17 -0700)
With the current default values, this patch is not critical, as
LOCAL_HNA_TIMEOUT is a multiple of 1000 anyway. However, if someone
would like to change this #define, the person could have some
unexpected rounding issues. Therefore doing the multiplication before
the division now.

Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/batman-adv/translation-table.c

index 9fd32a9..fdd902d 100644 (file)
@@ -258,7 +258,7 @@ static void hna_local_purge(struct work_struct *work)
                hna_local_entry = hashit.bucket->data;
 
                timeout = hna_local_entry->last_seen +
-                       ((LOCAL_HNA_TIMEOUT / 1000) * HZ);
+                       ((LOCAL_HNA_TIMEOUT * HZ) / 1000);
                if ((!hna_local_entry->never_purge) &&
                    time_after(jiffies, timeout))
                        hna_local_del(hna_local_entry, "address timed out");