All of lore.kernel.org
 help / color / mirror / Atom feed
From: Antonio Quartulli <ordex@autistici.org>
To: The list for a Better Approach To Mobile Ad-hoc Networking
	<b.a.t.m.a.n@lists.open-mesh.org>
Subject: Re: [B.A.T.M.A.N.] [PATCHv3 6/9] batman-adv: adapt bonding to use the new API functions
Date: Tue, 27 Aug 2013 18:33:24 +0200	[thread overview]
Message-ID: <20130827163324.GG2896@ritirata.org> (raw)
In-Reply-To: <201308261111.37380.lindner_marek@yahoo.de>

[-- Attachment #1: Type: text/plain, Size: 1854 bytes --]

On Mon, Aug 26, 2013 at 11:11:37AM +0800, Marek Lindner wrote:
> On Tuesday, August 13, 2013 14:43:49 Antonio Quartulli wrote:
> >  	list_for_each_entry_rcu(tmp_neigh_node, &primary_orig->bond_list,
> > @@ -502,8 +509,8 @@ batadv_find_ifalter_router(struct batadv_orig_node
> > *primary_orig, if (tmp_neigh_node->if_incoming == recv_if)
> >  			continue;
> > 
> > -		if (router &&
> > -		    tmp_neigh_node->bat_iv.tq_avg <= router->bat_iv.tq_avg)
> > +		tmp_metric = bao->bat_metric_get(tmp_neigh_node);
> > +		if (router && (tmp_metric <= router_metric))
> >  			continue;
> 
> This last comparison looks horribly wrong. Isn't that what we have the API 
> for?

we don't have an API for this.
In this case we should use the "bat_metric_compare" but we removed
that API in this version since it was going to be implemented as a "<=" for all
the algorithms we have on the plate now (bat_iv and bat_v).
This is the reason why here we use the compare operation directly.

> 
> Besides, it seems to me the bat_metric_is_equiv_or_better() call has been 
> misdesigned. Instead of passing the metric and having each function store + 
> process the metric this call should accept 2 neighbor nodes as argument. This 
> should save 2 out of 3 API calls (2 * bao->bat_metric_get()) and some code in 
> all the functions needing the bat_metric_is_equiv_or_better() API. Moreover, 
> it should reduce the impact on performance because each callback will cost us 
> a little bit ..
> 

we could do that, yeah, even if the tests[1] shown that there is not much to
gain at the moment.
What do you suggest?


Cheers,

[1] http://codepad.org/ZEtQASF3 - test performed using iperf between two clients
connected via Ethernet to 2 OM2P-HS.


-- 
Antonio Quartulli

..each of us alone is worth nothing..
Ernesto "Che" Guevara

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  reply	other threads:[~2013-08-27 16:33 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-13  6:43 [B.A.T.M.A.N.] [PATCHv3 0/9] Improving the routing protocol abstraction Antonio Quartulli
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 1/9] batman-adv: make struct batadv_neigh_node algorithm agnostic Antonio Quartulli
2013-08-16  3:46   ` Marek Lindner
2013-08-16  6:27     ` Antonio Quartulli
2013-08-16  9:27       ` Marek Lindner
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 2/9] batman-adv: make struct batadv_orig_node " Antonio Quartulli
2013-08-16  4:01   ` Marek Lindner
2013-08-16  6:29     ` Antonio Quartulli
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 3/9] batman-adv: add bat_orig_print function API Antonio Quartulli
2013-08-16  4:05   ` Marek Lindner
2013-08-16  6:30     ` Antonio Quartulli
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 4/9] batman-adv: add bat_metric_get API function Antonio Quartulli
2013-08-26  1:44   ` Marek Lindner
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 5/9] batman-adv: add bat_metric_is_equiv_or_better " Antonio Quartulli
2013-08-26  1:49   ` Marek Lindner
2013-08-26  6:37     ` Antonio Quartulli
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 6/9] batman-adv: adapt bonding to use the new API functions Antonio Quartulli
2013-08-26  3:11   ` Marek Lindner
2013-08-27 16:33     ` Antonio Quartulli [this message]
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 7/9] batman-adv: adapt the neighbor purging routine " Antonio Quartulli
2013-08-26  3:29   ` Marek Lindner
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 8/9] batman-adv: provide orig_node routing API Antonio Quartulli
2013-08-26  3:31   ` Marek Lindner
2013-08-13  6:43 ` [B.A.T.M.A.N.] [PATCHv3 9/9] batman-adv: adapt the TT component to use the new API functions Antonio Quartulli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130827163324.GG2896@ritirata.org \
    --to=ordex@autistici.org \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.