[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20150902.153310.10595894847638285.davem@davemloft.net>
Date: Wed, 02 Sep 2015 15:33:10 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: gospo@...ulusnetworks.com
Cc: tgraf@...g.ch, dsa@...ulusnetworks.com, netdev@...r.kernel.org
Subject: Re: [PATCH net-next 3/3] net: Add table id from route lookup to
route response
From: Andy Gospodarek <gospo@...ulusnetworks.com>
Date: Wed, 2 Sep 2015 15:43:27 -0400
> On Wed, Sep 02, 2015 at 09:08:36PM +0200, Thomas Graf wrote:
>> On 09/02/15 at 12:51pm, David Ahern wrote:
>> > On 9/2/15 12:49 PM, David Miller wrote:
>> > >From: Thomas Graf <tgraf@...g.ch>
>> > >Date: Wed, 2 Sep 2015 20:43:46 +0200
>> > >
>> > >>On 09/02/15 at 09:40am, David Ahern wrote:
>> > >>>rt_fill_info which is called for 'route get' requests hardcodes the
>> > >>>table id as RT_TABLE_MAIN which is not correct when multiple tables
>> > >>>are used. Use the newly added table id in the rtable to send back
>> > >>>the correct table.
>> > >>>
>> > >>>Signed-off-by: David Ahern <dsa@...ulusnetworks.com>
>> > >>
>> > >>What RTM_GETROUTE returns is not the actual route but a description
>> > >>of the routing decision which is why table id, scope, protocol, and
>> > >>prefix length are hardcoded. This is indicated by the RTM_F_CLONED
>> > >>flag. What you propose would break userspace ABI.
>> > >
>> > >Agreed, I don't think we can do this.
>> > >
>> >
>> > Doesn't the table used to come up with the decision matter for IPv4? ie.,
>> > hardcoding to MAIN is misleading when there is absolutely no way the
>> > decision comes from that table. IPv6 already returns the table id.
>> >
>> > Or is your response that it breaks ABI and hence not going to fix.
>>
>> This behaviour comes back from when we still had the IPv4 routing cache
>> which was flat.
>
> So before the routing cache was removed, was the response always
> RTA_TABLE_MAIN since there was no way to indicate which table may have
> route if it came from the cache?
Right. In fact, it was possible for routes from multiple tables to
end up evaluating to the same routing cache entry. So there could be
a many to one relationship back then.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists