diff options
author | Hannes Frederic Sowa <hannes@stressinduktion.org> | 2013-06-27 00:06:56 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-06-28 21:19:17 -0700 |
commit | 1ec047eb4751e331bc61cff0e98f0db67db8b8dc (patch) | |
tree | 51f7272d5c26eb44e90624e682daa54c96064886 /net/ipv6/mcast.c | |
parent | ae0d67505ca30c635f7763564622c9710913f293 (diff) | |
download | op-kernel-dev-1ec047eb4751e331bc61cff0e98f0db67db8b8dc.zip op-kernel-dev-1ec047eb4751e331bc61cff0e98f0db67db8b8dc.tar.gz |
ipv6: introduce per-interface counter for dad-completed ipv6 addresses
To reduce the number of unnecessary router solicitations, MLDv2 and IGMPv3
messages we need to track the number of valid (as in non-optimistic,
no-dad-failed and non-tentative) link-local addresses. Therefore, this
patch implements a valid_ll_addr_cnt in struct inet6_dev.
We now only emit router solicitations if the first link-local address
finishes duplicate address detection.
The changes for MLDv2 and IGMPv3 are in a follow-up patch.
While there, also simplify one if statement(one minor nit I made in one
of my previous patches):
if (!...)
do();
else
return;
<<into>>
if (...)
return;
do();
Cc: Flavio Leitner <fbl@redhat.com>
Cc: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Cc: David Stevens <dlstevens@us.ibm.com>
Suggested-by: David Stevens <dlstevens@us.ibm.com>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Acked-by: Flavio Leitner <fbl@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/mcast.c')
0 files changed, 0 insertions, 0 deletions