All of lore.kernel.org
 help / color / mirror / Atom feed
From: Veaceslav Falico <vfalico@redhat.com>
To: Jay Vosburgh <fubar@us.ibm.com>
Cc: netdev@vger.kernel.org, andy@greyhouse.net, davem@davemloft.net,
	linux@8192.net, nicolas.2p.debian@free.fr, rick.jones2@hp.com
Subject: Re: [PATCH net-next 1/6] bonding: verify if bond has ip only once on arp validate
Date: Wed, 19 Jun 2013 20:48:38 +0200	[thread overview]
Message-ID: <20130619184838.GA22345@redhat.com> (raw)
In-Reply-To: <27844.1371664224@death.nxdomain>

On Wed, Jun 19, 2013 at 10:50:24AM -0700, Jay Vosburgh wrote:
>Veaceslav Falico <vfalico@redhat.com> wrote:
>
>>It's extra work to verify bond's ip presence for every slave, so take it
>>out of the loop.
>
>	The current code doesn't verify for every slave (target address,
>actually).  The call to bond_has_this_ip() happens at most once, if the
>sip (source IP) matches the arp_ip_target being inspected, after which
>the function returns.
>
>	I can see that the patch will bypass the loop entirely if the
>bond lacks the IP, but I'm not sure that's a meaningful improvement,
>since it changes from calling bond_has_this_ip 0 or 1 times to always 1
>time.

Yep, you're right, I've misread the code.

It's just not worth it, will drop this patch in v2.

>
>	-J
>
>
>>Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
>>---
>> drivers/net/bonding/bond_main.c |   13 ++++++++-----
>> 1 files changed, 8 insertions(+), 5 deletions(-)
>>
>>diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
>>index bc1246f..3d8b5ba 100644
>>--- a/drivers/net/bonding/bond_main.c
>>+++ b/drivers/net/bonding/bond_main.c
>>@@ -2602,13 +2602,16 @@ static void bond_validate_arp(struct bonding *bond, struct slave *slave, __be32
>> 	int i;
>> 	__be32 *targets = bond->params.arp_targets;
>>
>>+	if (!bond_has_this_ip(bond, tip)) {
>>+		pr_debug("bva: tip %pI4 not found\n", &tip);
>>+		return;
>>+	}
>>+
>> 	for (i = 0; (i < BOND_MAX_ARP_TARGETS) && targets[i]; i++) {
>>-		pr_debug("bva: sip %pI4 tip %pI4 t[%d] %pI4 bhti(tip) %d\n",
>>-			 &sip, &tip, i, &targets[i],
>>-			 bond_has_this_ip(bond, tip));
>>+		pr_debug("bva: sip %pI4 tip %pI4 t[%d] %pI4 bhti(tip)\n",
>>+			 &sip, &tip, i, &targets[i]);
>> 		if (sip == targets[i]) {
>>-			if (bond_has_this_ip(bond, tip))
>>-				slave->last_arp_rx = jiffies;
>>+			slave->last_arp_rx = jiffies;
>> 			return;
>> 		}
>> 	}
>>--
>>1.7.1
>>
>
>---
>	-Jay Vosburgh, IBM Linux Technology Center, fubar@us.ibm.com
>

      reply	other threads:[~2013-06-19 18:49 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-19 17:34 [PATCH net-next 1/6] bonding: verify if bond has ip only once on arp validate Veaceslav Falico
2013-06-19 17:50 ` Jay Vosburgh
2013-06-19 18:48   ` Veaceslav Falico [this message]

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=20130619184838.GA22345@redhat.com \
    --to=vfalico@redhat.com \
    --cc=andy@greyhouse.net \
    --cc=davem@davemloft.net \
    --cc=fubar@us.ibm.com \
    --cc=linux@8192.net \
    --cc=netdev@vger.kernel.org \
    --cc=nicolas.2p.debian@free.fr \
    --cc=rick.jones2@hp.com \
    /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.