From: Brian Haley <brian.haley@hp•com>
To: Ben Hutchings <bhutchings@solarflare•com>
Cc: Jay Vosburgh <fubar@us•ibm.com>,
David Miller <davem@davemloft•net>,
Andy Gospodarek <andy@greyhouse•net>,
Patrick McHardy <kaber@trash•net>,
netdev@vger•kernel.org
Subject: Re: [PATCH net-next-2.6 3/3] bonding,ipv4,ipv6,vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS
Date: Mon, 18 Apr 2011 21:32:40 -0400 [thread overview]
Message-ID: <4DACE638.9060909@hp.com> (raw)
In-Reply-To: <1303153792.2857.32.camel@bwh-desktop>
On 04/18/2011 03:09 PM, Ben Hutchings wrote:
> How about restoring the parameters like this:
>
> ---
> From: Ben Hutchings <bhutchings@solarflare•com>
> Date: Mon, 18 Apr 2011 19:36:48 +0100
> Subject: [PATCH net-next-2.6] ipv4,ipv6,bonding: Restore control over number of peer notifications
>
> For backward compatibility, we should retain the module parameters and
> sysfs attributes to control the number of peer notifications
> (gratuitous ARPs and unsolicited NAs) sent after bonding failover.
> Also, it is possible for failover to take place even though the new
> active slave does not have link up, and in that case the peer
> notification should be deferred until it does.
>
> Change ipv4 and ipv6 so they do not automatically send peer
> notifications on bonding failover. Change the bonding driver to send
> separate NETDEV_NOTIFY_PEERS notifications when the link is up, as
> many times as requested. Since it does not directly control which
> protocols send notifications, make num_grat_arp and num_unsol_na
> aliases for a single parameter.
Hi Ben,
I think this looks good, I'll try and get this tested here when I have
a chance, but for now I can:
Acked-by: Brian Haley <brian.haley@hp•com>
Should we just go ahead and make a new parameter for peer notification?
Compiled but untested patch below.
Thanks,
-Brian
--
Make a new bonding parameter, called num_peer_notif, to control how
many peer notifications are sent on fail-over. Mark the old values,
num_grat_arp and num_unsol_na, as deprecated in the documentation.
Signed-off-by: Brian Haley <brian.haley@hp•com>
diff --git a/Documentation/networking/bonding.txt b/Documentation/networking/bonding.txt
index 511b4e5..8b16beb 100644
--- a/Documentation/networking/bonding.txt
+++ b/Documentation/networking/bonding.txt
@@ -585,8 +585,15 @@ mode
chosen.
num_grat_arp
+
+ Deprecated. Use num_peer_notif instead.
+
num_unsol_na
+ Deprecated. Use num_peer_notif instead.
+
+num_peer_notif
+
Specify the number of peer notifications (gratuitous ARPs and
unsolicited IPv6 Neighbor Advertisements) to be issued after a
failover event. As soon as the link is up on the new slave
@@ -595,7 +602,7 @@ num_unsol_na
each link monitor interval (arp_interval or miimon, whichever
is active) if the number is greater than 1.
- These notifications are now generated by the ipv4 and ipv6 code
+ These notifications are now generated by the IPv4 and IPv6 code
and the numbers of repetitions cannot be set independently.
The valid range is 0 - 255; the default value is 1. These options
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 956a6f7..631ca9e 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -116,6 +116,8 @@ module_param_named(num_grat_arp, num_peer_notif, int, 0644);
MODULE_PARM_DESC(num_grat_arp, "Number of peer notifications to send on failover event");
module_param_named(num_unsol_na, num_peer_notif, int, 0644);
MODULE_PARM_DESC(num_unsol_na, "Number of peer notifications to send on failover event");
+module_param_named(num_peer_notif, num_peer_notif, int, 0644);
+MODULE_PARM_DESC(num_unsol_na, "Number of peer notifications to send on failover event");
module_param(miimon, int, 0);
MODULE_PARM_DESC(miimon, "Link check interval in milliseconds");
module_param(updelay, int, 0);
@@ -4699,7 +4701,7 @@ static int bond_check_params(struct bond_params *params)
}
if (num_peer_notif < 0 || num_peer_notif > 255) {
- pr_warning("Warning: num_grat_arp/num_unsol_na (%d) not in range 0-255 so it was reset to 1\n",
+ pr_warning("Warning: num_peer_notif (%d) not in range 0-255 so it was reset to 1\n",
num_peer_notif);
num_peer_notif = 1;
}
diff --git a/drivers/net/bonding/bond_sysfs.c b/drivers/net/bonding/bond_sysfs.c
index 58fb3e9..b03e7be 100644
--- a/drivers/net/bonding/bond_sysfs.c
+++ b/drivers/net/bonding/bond_sysfs.c
@@ -896,6 +896,8 @@ static DEVICE_ATTR(num_grat_arp, S_IRUGO | S_IWUSR,
bonding_show_num_peer_notif, bonding_store_num_peer_notif);
static DEVICE_ATTR(num_unsol_na, S_IRUGO | S_IWUSR,
bonding_show_num_peer_notif, bonding_store_num_peer_notif);
+static DEVICE_ATTR(num_peer_notif, S_IRUGO | S_IWUSR,
+ bonding_show_num_peer_notif, bonding_store_num_peer_notif);
/*
* Show and set the MII monitor interval. There are two tricky bits
@@ -1598,6 +1600,7 @@ static struct attribute *per_bond_attrs[] = {
&dev_attr_xmit_hash_policy.attr,
&dev_attr_num_grat_arp.attr,
&dev_attr_num_unsol_na.attr,
+ &dev_attr_num_peer_notif.attr,
&dev_attr_miimon.attr,
&dev_attr_primary.attr,
&dev_attr_primary_reselect.attr,
next prev parent reply other threads:[~2011-04-19 1:32 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-15 23:47 [PATCH net-next-2.6 3/3] bonding,ipv4,ipv6,vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS Ben Hutchings
2011-04-16 0:30 ` Jay Vosburgh
2011-04-16 1:51 ` Brian Haley
2011-04-16 2:53 ` Ben Hutchings
2011-04-18 19:09 ` Ben Hutchings
2011-04-19 1:32 ` Brian Haley [this message]
2011-04-19 14:56 ` Ben Hutchings
2011-04-19 19:12 ` Jay Vosburgh
2011-04-19 19:34 ` Brian Haley
2011-04-22 4:13 ` David Miller
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=4DACE638.9060909@hp.com \
--to=brian.haley@hp$(echo .)com \
--cc=andy@greyhouse$(echo .)net \
--cc=bhutchings@solarflare$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=fubar@us$(echo .)ibm.com \
--cc=kaber@trash$(echo .)net \
--cc=netdev@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox