All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Haller <thaller@redhat.com>
To: Benjamin Poirier <bpoirier@nvidia.com>, David Ahern <dsahern@kernel.org>
Cc: nicolas.dichtel@6wind.com,
	Stephen Hemminger <stephen@networkplumber.org>,
	 Hangbin Liu <liuhangbin@gmail.com>,
	Ido Schimmel <idosch@idosch.org>,
	netdev@vger.kernel.org, "David S . Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>,
	 Paolo Abeni <pabeni@redhat.com>
Subject: Re: [PATCH net-next] ipv4/fib: send RTM_DELROUTE notify when flush fib
Date: Mon, 11 Sep 2023 11:50:23 +0200	[thread overview]
Message-ID: <32d40b75d5589b73e17198eb7915c546ea3ff9b1.camel@redhat.com> (raw)
In-Reply-To: <ZNKQdLAXgfVQxtxP@d3>

On Tue, 2023-08-08 at 14:59 -0400, Benjamin Poirier wrote:
> On 2023-08-07 19:44 -0600, David Ahern wrote:
> > On 8/2/23 3:10 AM, Thomas Haller wrote:
> > > On Fri, 2023-07-28 at 09:42 -0600, David Ahern wrote:
> > > > On 7/28/23 7:01 AM, Nicolas Dichtel wrote:
> > > > 
> > > > > Managing a cache with this is not so obvious 😉
> > > > 
> > > > 
> > > > FRR works well with Linux at this point, 
> > > 
> > > Interesting. Do you have a bit more information?
> > > 
> > > > and libnl's caching was updated
> > > > ad fixed by folks from Cumulus Networks so it should be a good
> > > > too.
> > > 
> > > 
> > > Which "libnl" do you mean?
> > 
> > yes. https://github.com/thom311/libnl.git
> > 
> > > 
> > > Route caching in libnl3 upstream is very broken (which I am to
> > > blame
> > > for, as I am the maintainer).
> > > 
> > 
> > as someone who sent in patches it worked for all of Cumulus' uses
> > cases
> > around 2018-2019 time frame. Can't speak for the status today.
> > 
> 
> Nowadays Cumulus still relies on an OOT kernel patch almost identical
> to
> Hangbin's.
> 
> Looking through an old ticket on the subject, I can see you had
> indeed
> prepared patches to make Cumulus' libnl-using application (switchd)
> delete route entries from the libnl cache based on link down events.
> Ultimately, those changes were left on the table for two reasons:
> 1) This would've been the first time for Cumulus that the libnl cache
> would be modified by the application instead of in response to
> netlink
> events. Roopa was concerned that there might be race conditions.
> 2) There was an expectation at the time that Cumulus would move to
> switchdev, which would've made switchd and libnl unnecessary.
> 
> I brought up the removal of this OOT kernel patch again a few months
> ago
> but there was not enough interest internally. In fact, I was just
> asked
> to add *more* notifications for a similar case, sigh.


Hi,

Those patches were sent to me directly, and never hit the mailing list
(due to technical problems with the list). More importantly, the
changes were complicated, combined with having no tests. I hesitated to
merge them. Nowadays, the unit test setup for libnl3 improved, and it
would be great to fix this.

This is all entirely my fault as maintainer, but two points:

- libnl3 upstream still does *not* handle route caching correctly (at
all).

- the fact that it isn't fixed in more than a decade, shows IMO that
getting caching right for routes is very hard. Patches that improve the
behavior should not be rejected with "look at libnl3 or FRR".


If FRR gets this right, it's honestly an impressive accomplishment. I'd
still be curious about the details.


Thomas


  reply	other threads:[~2023-09-11  9:50 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-18  8:00 [PATCH net-next] ipv4/fib: send RTM_DELROUTE notify when flush fib Hangbin Liu
2023-07-18 10:19 ` Ido Schimmel
2023-07-18 10:32   ` Ido Schimmel
2023-07-18 14:45     ` David Ahern
2023-07-18 15:58   ` Stephen Hemminger
2023-07-20  7:51     ` Hangbin Liu
2023-07-20 14:29       ` Ido Schimmel
2023-07-21  1:34         ` Hangbin Liu
2023-07-21  4:01           ` David Ahern
2023-07-21  5:46             ` Hangbin Liu
2023-07-23  7:38               ` Ido Schimmel
2023-07-24  8:56                 ` Hangbin Liu
2023-07-24 15:48                   ` Stephen Hemminger
2023-07-25  8:20                     ` Hangbin Liu
2023-07-25 16:36                       ` Stephen Hemminger
2023-07-28 13:01                         ` Nicolas Dichtel
2023-07-28 15:42                           ` David Ahern
2023-08-02  9:10                             ` Thomas Haller
2023-08-08  1:44                               ` David Ahern
2023-08-08 18:59                                 ` Benjamin Poirier
2023-09-11  9:50                                   ` Thomas Haller [this message]
2023-09-13  7:58                                     ` Nicolas Dichtel
2023-09-13  9:54                                       ` Hangbin Liu
2023-09-13 14:11                                         ` Nicolas Dichtel
2023-09-13 14:43                                           ` David Ahern
2023-09-13 14:53                                             ` Nicolas Dichtel
2023-09-14 15:43                                               ` Nicolas Dichtel
2023-09-15  3:07                                                 ` David Ahern
2023-09-15 15:54                                                   ` Nicolas Dichtel
2023-09-13 14:41                                       ` David Ahern
2023-09-15 16:59                                         ` Stephen Hemminger
2023-07-26 10:17                     ` [Questions] Some issues about IPv4/IPv6 nexthop route (was Re: [PATCH net-next] ipv4/fib: send RTM_DELROUTE notify when flush fib) Hangbin Liu
2023-07-26 15:57                       ` David Ahern
2023-07-27  4:19                         ` [Questions] Some issues about IPv4/IPv6 nexthop route Hangbin Liu
2023-07-27 15:35                           ` David Ahern
2023-07-27 14:45                       ` [Questions] Some issues about IPv4/IPv6 nexthop route (was Re: [PATCH net-next] ipv4/fib: send RTM_DELROUTE notify when flush fib) Ido Schimmel
2023-08-28  7:53                         ` [Questions] Some issues about IPv4/IPv6 nexthop route Hangbin Liu
2023-08-28 15:06                           ` David Ahern
2023-08-29  1:07                             ` Hangbin Liu
2023-08-29  1:42                               ` David Ahern
2023-08-02  9:06                 ` [PATCH net-next] ipv4/fib: send RTM_DELROUTE notify when flush fib Thomas Haller
2023-08-04  8:09                 ` Hangbin Liu
2023-08-09  7:06                   ` Ido Schimmel
2023-08-09 10:02                     ` Hangbin Liu
2023-07-25 14:13 ` kernel test robot

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=32d40b75d5589b73e17198eb7915c546ea3ff9b1.camel@redhat.com \
    --to=thaller@redhat.com \
    --cc=bpoirier@nvidia.com \
    --cc=davem@davemloft.net \
    --cc=dsahern@kernel.org \
    --cc=edumazet@google.com \
    --cc=idosch@idosch.org \
    --cc=kuba@kernel.org \
    --cc=liuhangbin@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=nicolas.dichtel@6wind.com \
    --cc=pabeni@redhat.com \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.