Subject: Re: [PATCH RFC v2 net-next 00/21] net/ipv6: Separate data structures for FIB and data path

From: Ido Schimmel <[email-masked]>
Date: Sat, 24 Mar 2018 18:59:57 +0300

On Sat, Mar 24, 2018 at 09:28:01AM -0600, David Ahern wrote:
> On 3/24/18 9:05 AM, Ido Schimmel wrote:
> > On Sun, Mar 18, 2018 at 08:36:01PM -0700, David Ahern wrote:
> >> This set is the first of many changes to improve the scalability of the
> >> IPv6 code. Follow on changes include:
> >> - consolidating duplicate fib6_info references like IPv4 does with
> >>   duplicate fib_info
> > 
> > Before that you need to further break fib6_info into fib6_info and
> > fib6_alias, or I misunderstood you?
> > 
> 
> I was only listing the high level intent - to consolidate duplication. I
> have not looked into that step yet, but I suspect that split can be done
> in the same patch set as consolidating duplicate fib6_info.

I don't think you can perform consolidation of fib6_info as long as it
describes both the route and the nexthop info.

> As you know, my preference is to move to nexthop objects (makes fib6_nh
> optional). I have IPv4 done; IPv6 requires this patch set. 

After going over your presentation [1] I was under the impression that
the fib6_info will be optional, not fib6_nh: "Idea is similar to adding
id to fib_info that is exposed to userspace. Subsequent routes pass id
to avoid fib_info overhead".

But I think misunderstood you. You want to introduce the nexthop API
that will allow you to have multiple fib6_info pointing to the same
fib6_nh?

1. http://vger.kernel.org/netconf2017_files/nexthop-objects.pdf