diff options
author | Veaceslav Falico <vfalico@redhat.com> | 2013-06-24 05:49:30 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-06-25 19:58:38 -0400 |
commit | 0afee4e8b9fe4b5f58734b2f28e980dd58d3e3cb (patch) | |
tree | 39369efaa210c7dbf4dab5df4cb2612f15202def /drivers/net/bonding/bond_main.c | |
parent | 87a7b84b588c2ddbde890890855aef18ec34174e (diff) |
bonding: don't add duplicate targets to arp_ip_target
Print a warning and skip them.
Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bonding/bond_main.c')
-rw-r--r-- | drivers/net/bonding/bond_main.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 976d28e3498a..1645130c0a60 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c | |||
@@ -4588,7 +4588,11 @@ static int bond_check_params(struct bond_params *params) | |||
4588 | arp_ip_target[i]); | 4588 | arp_ip_target[i]); |
4589 | arp_interval = 0; | 4589 | arp_interval = 0; |
4590 | } else { | 4590 | } else { |
4591 | arp_target[arp_ip_count++] = ip; | 4591 | if (bond_get_targets_ip(arp_target, ip) == -1) |
4592 | arp_target[arp_ip_count++] = ip; | ||
4593 | else | ||
4594 | pr_warning("Warning: duplicate address %pI4 in arp_ip_target, skipping\n", | ||
4595 | &ip); | ||
4592 | } | 4596 | } |
4593 | } | 4597 | } |
4594 | 4598 | ||