fix algorithm, which was unintentional changed on update from 2013 to 2014

Message ID 20150517113726.47de614d@i3.local (mailing list archive)
State Rejected, archived
Headers

Commit Message

Ruben Wisniewski May 17, 2015, 9:37 a.m. UTC
  This patch restores the unintentional change on commit 

http://www.open-mesh.org/projects/batman-adv/repository/revisions/0853ec7fafe0a195754454832993c6b35e22b842/diff/gateway_client.c

Original the algorithm uses kbit for calculation, now the values are
stored as "mbit*10" so we have to multiply it with 100 to restore the old
behavior.


Signed-off-by: Ruben Wisniewsi <ruben@vfn-nrw.de>
---
 net/batman-adv/gateway_client.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Sven Eckelmann May 17, 2015, 9:49 a.m. UTC | #1
On Sunday 17 May 2015 11:37:26 Ruben Wisniewski wrote:
> This patch restores the unintentional change on commit
> 
> http://www.open-mesh.org/projects/batman-adv/repository/revisions/0853ec7faf
> e0a195754454832993c6b35e22b842/diff/gateway_client.c

Please use a format more like in the commit I've showed in the last mail about 
this patch and not such a link. The relevant documentation about it can be 
found in https://www.kernel.org/doc/Documentation/SubmittingPatches under "2) 
Describe your changes."

Also the patch subject is... see the other mails and the mentioned 
documentation in it.

> Original the algorithm uses kbit for calculation, now the values are
> stored as "mbit*10" so we have to multiply it with 100 to restore the old
> behavior.

Things I miss in the commit message: why is the old behavior better? What 
problem was introduced because of the missing " * 100".

Kind regards,
	Sven
  

Patch

diff --git a/net/batman-adv/gateway_client.c b/net/batman-adv/gateway_client.c
index 1f50661..6f00584 100644
--- a/net/batman-adv/gateway_client.c
+++ b/net/batman-adv/gateway_client.c
@@ -185,7 +185,7 @@  batadv_gw_get_best_gw_node(struct batadv_priv *bat_priv)
 		switch (atomic_read(&bat_priv->gw_sel_class)) {
 		case 1: /* fast connection */
 			tmp_gw_factor = tq_avg * tq_avg;
-			tmp_gw_factor *= gw_node->bandwidth_down;
+			tmp_gw_factor *= gw_node->bandwidth_down * 100;
 			tmp_gw_factor *= 100 * 100;
 			tmp_gw_factor /= gw_divisor;