From: Nicolas Dichtel <nicolas.dichtel@6wind.com>
To: Hannes Frederic Sowa <hannes@stressinduktion.org>,
netdev@vger.kernel.org
Cc: Eric Dumazet <eric.dumazet@gmail.com>,
Vlad Yasevich <vyasevich@gmail.com>
Subject: Re: [PATCH RFC 1/6] ipv6: also increase fib6_node sernum on deletion events
Date: Tue, 16 Sep 2014 18:18:53 +0200 [thread overview]
Message-ID: <541862ED.8090600@6wind.com> (raw)
In-Reply-To: <4f55afa99da1dab957b2dc5e7b313a1b70f864f3.1410477596.git.hannes@stressinduktion.org>
Le 12/09/2014 01:21, Hannes Frederic Sowa a écrit :
> fib6_add increases the fn_sernum of fib6_nodes while it traverses the
> tree. This serial number is used by ip6_dst_check to judge whether a
> relookup for the socket cache should be done (e.g. a better route is
> available).
>
> We didn't do so for fib6_del, so we missed relookups on ipv6 address
> deletion events. Because this caused trouble in the SCTP stack, instead
> the genid for ipv6 was bumped. Also TCP connections used old source
> addresses, which were not available anymore.
>
> Because we have static rt6_nodes in the tree (no RTF_GATEWAY,
> RTF_NONEXTHOP nor RTF_CACHE nodes but still DST_HOST) flag, we ended up
> in a situation where the genid of the routing node was always smaller
> than the published genid in the namespace. That caused ip6_dst_check to
> always discard the current dst_entry and a relookup happend.
>
> This patch prepares for the removal of the ipv6 genid by also modifying
> the fn_sernum on route deletion.
>
> Thanks to Eric Dumazet who noticed this problem!
>
> Cc: Eric Dumazet <eric.dumazet@gmail.com>
> Cc: Vlad Yasevich <vyasevich@gmail.com>
> Cc: Nicolas Dichtel <nicolas.dichtel@6wind.com>
> Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
This serie looks good to me. Thank you for working on this topic!
Regards,
Nicolas
next prev parent reply other threads:[~2014-09-16 16:18 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-11 23:21 [PATCH RFC 0/6] ipv6: dst_entry socket caching improvments Hannes Frederic Sowa
2014-09-11 23:21 ` [PATCH RFC 1/6] ipv6: also increase fib6_node sernum on deletion events Hannes Frederic Sowa
2014-09-16 16:18 ` Nicolas Dichtel [this message]
2014-09-16 21:05 ` Hannes Frederic Sowa
2014-09-17 22:48 ` Hannes Frederic Sowa
2014-09-11 23:21 ` [PATCH RFC 2/6] ipv6: no need to bump rt_genid_ipv6 on address change anymore Hannes Frederic Sowa
2014-09-11 23:21 ` [PATCH RFC 3/6] ipv6: if no function for cleaner is specified only visit nodes Hannes Frederic Sowa
2014-09-11 23:21 ` [PATCH RFC 4/6] ipv6: new function fib6_flush_trees and use it instead of bumping removed rt6_genid Hannes Frederic Sowa
2014-09-11 23:21 ` [PATCH RFC 5/6] ipv6: keep rt_sernum per namespace to reduce number of flushes Hannes Frederic Sowa
2014-09-11 23:21 ` [PATCH RFC 6/6] ipv6: switch rt_sernum to atomic_t and clean up types Hannes Frederic Sowa
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=541862ED.8090600@6wind.com \
--to=nicolas.dichtel@6wind.com \
--cc=eric.dumazet@gmail.com \
--cc=hannes@stressinduktion.org \
--cc=netdev@vger.kernel.org \
--cc=vyasevich@gmail.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.