Subject: Re: [homenet] [PATCH net] ipv6: don't stop backtracking in fib6_lookup_1 if subtree does not match

From: Teco Boot <[email-masked]>
Date: Tue, 13 Aug 2013 11:18:23 +0200

A patch is queued for Linux kernel, fixing SADR for IPv6. Works well. I think we shall put some effort to get this out. Then, we can get rid of the ip rules hack. Patch: http://patchwork.ozlabs.org/patch/265288/

Could some verify the patch? 
Help getting this out in the wild?

Teco

Op 13 aug. 2013, om 10:15 heeft David Miller <[email-masked]> het volgende geschreven:

> From: Teco Boot <[email-masked]>
> Date: Tue, 13 Aug 2013 10:02:08 +0200
> 
>> It is an important element in my work for v6 multi-homed networks
>> (IETF Homenet WG).
> 
> You are one person.  -stable inclusion is decided based how important the
> fix is to everyone in both good (fixes a bug) and bad (might cause a
> regression) terms.
> 
> So "this is important for my work" is never a good reason for a patch
> to be included into -stable.
> 
> To convince us, you're going to have to present an argument that
> exists outside the very limited scope of your own self-interests.
> And "other people might/will use my important work in the future"
> is not sufficient either.
> 
> Thanks.
> 

>> this is my system:
>> Linux ubuntu 3.8.0-27-generic #40 SMP Sat Aug 10 10:53:34 CEST 2013 i686 i686 i686 GNU/Linux
>> CONFIG_IPV6_SUBTREES=y
>> ... clean up for our experiment
>> ... add a link-local
>> ... add default
>> ... add some source address specific defaults
>> ====> now I have this routing table
>> default from 2001:db8:10::/48 via fe80::10 dev eth0  metric 1024 
>> default from 2001:db8:11::/48 via fe80::11 dev eth0  metric 1024 
>> default from 2001:db8:12::/48 via fe80::12 dev eth0  metric 1024 
>> fe80::1 dev eth0  proto kernel  metric 256 
>> default via fe80::ff dev eth0  metric 1024 
>> ====> show route to same destination
>> 2001:db8:babe::1 from 2001:db8:10::1 via fe80::10 dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:babe::1 from 2001:db8:11::1 via fe80::11 dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:babe::1 from 2001:db8:12::1 via fe80::12 dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:babe::1 from 2001:db8:1::1 via fe80::ff dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:babe::1 from :: via fe80::ff dev eth0  src ::1  metric 0 \    cache 
>> ====> show route to different destinations
>> 2001:db8:cafe::10 from 2001:db8:10::1 via fe80::10 dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:cafe::11 from 2001:db8:11::1 via fe80::11 dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:cafe::12 from 2001:db8:12::1 via fe80::12 dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:cafe::21 from 2001:db8:1::1 via fe80::ff dev eth0  src ::1  metric 0 \    cache 
>> 2001:db8:cafe::22 from :: via fe80::ff dev eth0  src ::1  metric 0 \    cache 
>> ====> now the route cache is
>> 2001:db8:babe::1 from 2001:db8:10::/48 via fe80::10 dev eth0  metric 0 \    cache 
>> 2001:db8:babe::1 from 2001:db8:11::/48 via fe80::11 dev eth0  metric 0 \    cache 
>> 2001:db8:babe::1 from 2001:db8:12::/48 via fe80::12 dev eth0  metric 0 \    cache 
>> 2001:db8:babe::1 via fe80::ff dev eth0  metric 0 \    cache 
>> 2001:db8:cafe::10 from 2001:db8:10::/48 via fe80::10 dev eth0  metric 0 \    cache 
>> 2001:db8:cafe::11 from 2001:db8:11::/48 via fe80::11 dev eth0  metric 0 \    cache 
>> 2001:db8:cafe::12 from 2001:db8:12::/48 via fe80::12 dev eth0  metric 0 \    cache 
>> 2001:db8:cafe::21 via fe80::ff dev eth0  metric 0 \    cache 
>> 2001:db8:cafe::22 via fe80::ff dev eth0  metric 0 \    cache 
>> 
>