From: Hannes Frederic Sowa <hannes@stressinduktion•org>
To: RongQing Li <roy.qing.li@gmail•com>
Cc: Gao feng <gaofeng@cn•fujitsu.com>, netdev@vger•kernel.org
Subject: Re: [PATCH] ipv6: clear RTF_EXPIRES when call ip6_rt_copy
Date: Wed, 18 Dec 2013 07:20:00 +0100 [thread overview]
Message-ID: <20131218062000.GC27460@order.stressinduktion.org> (raw)
In-Reply-To: <CAJFZqHxB8PscqXnX9oxpHf8zFyW1hyCZVZTn_=DoKebN3X2ZGA@mail.gmail.com>
On Wed, Dec 18, 2013 at 10:21:12AM +0800, RongQing Li wrote:
> On Wed, Dec 18, 2013 at 10:09 AM, Gao feng <gaofeng@cn•fujitsu.com> wrote:
> > On 12/18/2013 09:58 AM, RongQing Li wrote:
> >> On Wed, Dec 18, 2013 at 8:48 AM, Gao feng <gaofeng@cn•fujitsu.com> wrote:
> >>> On 12/17/2013 09:48 PM, Hannes Frederic Sowa wrote:
> >>>> On Tue, Dec 17, 2013 at 03:46:24PM +0800, Gao feng wrote:
> >>>>> The from of new cloned rt should not be set if it's impossible for the ort
> >>>>> to be expired.
> >>>>
> >>>> Actually, why do you think so? What could go wrong?
> >>>>
> >>>
> >>> I just don't want rt6_check_expired to check some impossible expired routes.
> >>>
> >>
> >> What is wrong if we set from for new cloned rt by checking if ort has
> >> RTF_EXPIRES flag?
> >
> >
> > The RTF_EXPIRES flag may be changed by router advertisment package,
> > the ort may become expired after you hadn't set from for new cloned rt.
> >
> > we should set from even this kind of ort doesn't have RTF_EXPIRES flag.
>
>
> Thanks;
>
> Do we want to set from only from RA route? if so, we should check
> ort with RTF_ADDRCONF|RTF_DEFAULT, or RTF_ADDRCONF | RTF_ROUTEINFO,
Nope, as I said, also prefix routes which did get installed by hand locally
can have an expiration. I don't see any flag combination which ensure a
potential from does never expire. IMHO we should always from.
Also, in case we overwrite a route and the route is already in there, we reset
the expiry values: search for rt6_set_expires in fib6_add_rt2node.
We had the same problem with ECMP routes. We only wanted to add non-expiration
routes but we could not find a combination which did ensure that. In the end
we now also add non-expiration routes to an ecmp set (see commit
307f2fb95e9b96).
Greetings,
Hannes
next prev parent reply other threads:[~2013-12-18 6:20 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-16 8:31 [PATCH] ipv6: clear RTF_EXPIRES when call ip6_rt_copy roy.qing.li
2013-12-16 13:47 ` Eric Dumazet
2013-12-17 3:25 ` Gao feng
2013-12-17 3:32 ` RongQing Li
2013-12-17 5:57 ` Gao feng
2013-12-17 6:42 ` RongQing Li
2013-12-17 7:02 ` Hannes Frederic Sowa
2013-12-17 7:46 ` Gao feng
2013-12-17 8:30 ` Hannes Frederic Sowa
2013-12-17 9:23 ` Gao feng
2013-12-17 13:48 ` Hannes Frederic Sowa
2013-12-18 0:48 ` Gao feng
2013-12-18 1:58 ` RongQing Li
2013-12-18 2:09 ` Gao feng
2013-12-18 2:21 ` RongQing Li
2013-12-18 6:20 ` Hannes Frederic Sowa [this message]
2013-12-18 8:40 ` Gao feng
2013-12-19 0:37 ` Hannes Frederic Sowa
2013-12-19 0:47 ` RongQing Li
2013-12-19 4:40 ` [PATCH v2] ipv6: always set the new created dst's from in ip6_rt_copy roy.qing.li
2013-12-19 12:43 ` Hannes Frederic Sowa
2013-12-19 23:36 ` David Miller
2013-12-18 7:59 ` [PATCH] ipv6: clear RTF_EXPIRES when call ip6_rt_copy 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=20131218062000.GC27460@order.stressinduktion.org \
--to=hannes@stressinduktion$(echo .)org \
--cc=gaofeng@cn$(echo .)fujitsu.com \
--cc=netdev@vger$(echo .)kernel.org \
--cc=roy.qing.li@gmail$(echo .)com \
/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