public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Gao feng <gaofeng@cn•fujitsu.com>
To: RongQing Li <roy.qing.li@gmail•com>,
	netdev@vger•kernel.org,
	Hannes Frederic Sowa <hannes@stressinduktion•org>
Subject: Re: [PATCH] ipv6: clear RTF_EXPIRES when call ip6_rt_copy
Date: Tue, 17 Dec 2013 15:46:24 +0800	[thread overview]
Message-ID: <52B00150.3070002@cn.fujitsu.com> (raw)
In-Reply-To: <20131217070231.GA11970@order.stressinduktion.org>

On 12/17/2013 03:02 PM, Hannes Frederic Sowa wrote:
> On Tue, Dec 17, 2013 at 02:42:01PM +0800, RongQing Li wrote:
>> On 12/17/13, Gao feng <gaofeng@cn•fujitsu.com> wrote:
>>> On 12/17/2013 11:32 AM, RongQing Li wrote:
>>>> If the ort->rt6i_flags is RTF_EXPIRES|RTF_ADDRCONF, then rt6_set_from will
>>>> not
>>>> be called, and new created rt will have RTF_EXPIRES, but dst.expires is 0,
>>>> and
>>>> dst.from is NULL
>>>
>>> Ok, but I think you need to add more detail/test purpose of the test case
>>> v6LC.4.1.4
>>> { Reduce PMTU On-link }. just the number of test case is not good for people
>>> to know
>>> what's the real problem.
>>>
>>
>> I have a question, why does we set dst.from only when the ort has flag
>> RTF_ADDRCONF
>> and RTF_DEFAULT?
> 
> Good question. ;)
> 
> I wonder, too. In the past from and expires were a union and either from or
> expires was allowed to be used. In the commit you referred to this union was
> split into seperate fields.
> 
> It somehow worked in the past because routes normally have longer timeouts
> and the routes will get evicted from the route cache eventually. My guess
> is that we can set from unconditionally or copy over the expires value.
> 
> This patch already needed quite a long time to review for me and I am still
> unsure. :/
> 
> Gao, do you still remember why you used RTF_ADDRCONF|RTF_DEFAULT?
> 

It's a mystery, I noticed this problem when I wrote the codes.
http://lists.openwall.net/netdev/2012/03/19/7

I used the flags RTF_ADDRCONF|RTF_DEFAULT because they are exist in
rt6_{get,add,purge}_dflt_router.

The from of new cloned rt should not be set if it's impossible for the ort
to be expired.

but seems we should set from if flags have RTF_ADDRCONF bit. RA package
not only generate the default route.

  reply	other threads:[~2013-12-17  7:46 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 [this message]
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
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=52B00150.3070002@cn.fujitsu.com \
    --to=gaofeng@cn$(echo .)fujitsu.com \
    --cc=hannes@stressinduktion$(echo .)org \
    --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