Date: Mon, 01 Jun 2020 23:00:42 +0100 From: Alexander V. Chernikov <melifaro@freebsd.org> To: Cy Schubert <cy.schubert@cschubert.com>, Michael Tuexen <tuexen@fh-muenster.de> Cc: src-committers <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org> Subject: Re: svn commit: r361706 - in head/sys: net net/route netinet netinet6 Message-ID: <1493091591048645@mail.yandex.ru> In-Reply-To: <202006012143.051LhS8D073952@slippy.cwsent.com> References: <202006012049.051KnhxX060695@repo.freebsd.org> <6FE2C649-2D81-4C9C-B821-D8226B6BB95C@fh-muenster.de> <202006012143.051LhS8D073952@slippy.cwsent.com>
next in thread | previous in thread | raw e-mail | index | archive | help
01.06.2020, 22:43, "Cy Schubert" <cy.schubert@cschubert.com>: > In message <6FE2C649-2D81-4C9C-B821-D8226B6BB95C@fh-muenster.de>, Michael > Tuexe > n writes: >> --Apple-Mail=_30A6D176-B5FA-4F13-A949-3CE33C73C3B8 >> Content-Transfer-Encoding: quoted-printable >> Content-Type: text/plain; >> charset=us-ascii >> >> > On 1. Jun 2020, at 22:49, Alexander V. Chernikov = >> <melifaro@freebsd.org> wrote: >> >=20 >> > Author: melifaro >> > Date: Mon Jun 1 20:49:42 2020 >> > New Revision: 361706 >> > URL: https://svnweb.freebsd.org/changeset/base/361706 >> >=20 >> > Log: >> > * Add rib_<add|del|change>_route() functions to manipulate the = >> routing table. >> >=20 >> > The main driver for the change is the need to improve notification = >> mechanism. >> > Currently callers guess the operation data based on the rtentry = >> structure >> > returned in case of successful operation result. There are two = >> problems with >> > this appoach. First is that it doesn't provide enough information = >> for the >> > upcoming multipath changes, where rtentry refers to a new nexthop = >> group, >> > and there is no way of guessing which paths were added during the = >> change. >> > Second is that some rtentry fields can change during notification = >> and >> > protecting from it by requiring customers to unlock rtentry is not = >> desired. >> >=20 >> > Additionally, as the consumers such as rtsock do know which operation = >> they >> > request in advance, making explicit add/change/del versions of the = >> functions >> > makes sense, especially given the functions don't share a lot of = >> code. >> >=20 >> > With that in mind, introduce rib_cmd_info notification structure and >> > rib_<add|del|change>_route() functions, with mandatory rib_cmd_info = >> pointer. >> > It will be used in upcoming generalized notifications. >> >=20 >> > * Move definitions of the new functions and some other = >> functions/structures >> > used for the routing table manipulation to a separate header file, >> > net/route/route_ctl.h. net/route.h is a frequently used file = >> included in >> > ~140 places in kernel, and 90% of the users don't need these = >> definitions. >> >=20 >> > Reviewed by: ae >> > Differential Revision: https://reviews.freebsd.org/D25067 >> >=20 >> > Modified: >> > head/sys/net/if_llatbl.c >> > head/sys/net/route.c >> > head/sys/net/route.h >> > head/sys/net/route/nhop_ctl.c >> > head/sys/net/route/route_ctl.c >> > head/sys/net/route/route_ddb.c >> > head/sys/net/route/route_helpers.c >> > head/sys/net/route/route_temporal.c >> > head/sys/net/route/route_var.h >> > head/sys/netinet/in_rmx.c >> > head/sys/netinet/ip_icmp.c >> > head/sys/netinet6/icmp6.c >> > head/sys/netinet6/in6_rmx.c >> > head/sys/netinet6/nd6_rtr.c >> >=20 >> > Modified: head/sys/net/if_llatbl.c >> > = >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= >> =3D=3D=3D >> > --- head/sys/net/if_llatbl.c Mon Jun 1 20:40:40 2020 = >> (r361705) >> > +++ head/sys/net/if_llatbl.c Mon Jun 1 20:49:42 2020 = >> (r361706) >> > @@ -58,6 +58,7 @@ __FBSDID("$FreeBSD$"); >> > #include <net/if_dl.h> >> > #include <net/if_var.h> >> > #include <net/route.h> >> > +#include <net/route/route_ctl.h> >> Where is this file coming from? > > That was in r361704 and reverted in r361705, but should have been in this > commit too. Thanks for the notification and sorry for the breakage. Didn't realise it was not added and was testin another change. Commited back in r361707. > >> Best regards >> Michael > > -- > Cheers, > Cy Schubert <Cy.Schubert@cschubert.com> > FreeBSD UNIX: <cy@FreeBSD.org> Web: https://FreeBSD.org > NTP: <cy@nwtime.org> Web: https://nwtime.org > > The need of the many outweighs the greed of the few.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1493091591048645>