batman-adv: Replace gw_reselect divisor with simple shift
authorSven Eckelmann <sven@narfation.org>
Mon, 22 Jun 2015 07:13:23 +0000 (09:13 +0200)
committerAntonio Quartulli <antonio@meshcoding.com>
Tue, 11 Aug 2015 16:10:04 +0000 (18:10 +0200)
commite071d93eb40c969dc8c578dde5ddd89a30fb01cb
treef32db816f78240c73b810137f3a8d360955cde2b
parent07a51cd3794960548627a27aae68c1446341db32
batman-adv: Replace gw_reselect divisor with simple shift

The gw_factor is divided by BATADV_TQ_LOCAL_WINDOW_SIZE ** 2 * 64. But the
rest of the calculation has nothing to do with the tq window size and
therefore the calculation is just (tmp_gw_factor / (64 ** 3)).

Replace it with a simple shift to avoid a costly 64-bit divide when the
max_gw_factor is changed from u32 to u64. This type change is necessary
to avoid an overflow bug.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
net/batman-adv/gateway_client.c