lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 24 May 2022 22:33:49 +0800 From: Yuwei Wang <wangyuweihx@...il.com> To: Paolo Abeni <pabeni@...hat.com> Cc: davem@...emloft.net, Jakub Kicinski <kuba@...nel.org>, Eric Dumazet <edumazet@...gle.com>, daniel@...earbox.net, roopa@...dia.com, dsahern@...nel.org, 秦迪 <qindi@...ff.weibo.com>, netdev@...r.kernel.org, yuwei wang <wangyuweihx@...mail.com> Subject: Re: [PATCH net-next v2] net, neigh: introduce interval_probe_time for periodic probe On Tue, 24 May 2022 at 18:41, Paolo Abeni <pabeni@...hat.com> wrote: > > On Tue, 2022-05-24 at 17:38 +0800, Yuwei Wang wrote: > > On Tue, 24 May 2022 at 16:38, Paolo Abeni <pabeni@...hat.com> wrote: > > > > > > On Sun, 2022-05-22 at 03:17 +0000, Yuwei Wang wrote: > > > > > > > diff --git a/include/net/netevent.h b/include/net/netevent.h > > > > index 4107016c3bb4..121df77d653e 100644 > > > > --- a/include/net/netevent.h > > > > +++ b/include/net/netevent.h > > > > @@ -26,6 +26,7 @@ enum netevent_notif_type { > > > > NETEVENT_NEIGH_UPDATE = 1, /* arg is struct neighbour ptr */ > > > > NETEVENT_REDIRECT, /* arg is struct netevent_redirect ptr */ > > > > NETEVENT_DELAY_PROBE_TIME_UPDATE, /* arg is struct neigh_parms ptr */ > > > > + NETEVENT_INTERVAL_PROBE_TIME_UPDATE, /* arg is struct neigh_parms ptr */ > > > > > > Are you sure we need to notify the drivers about this parameter change? > > > The host will periodically resolve the neighbours, and that should work > > > regardless of the NIC offload. I think we don't need additional > > > notifications. > > > > > > > `mlxsw_sp_router_netevent_event` in > > drivers/net/ethernet/mellanox/mlx5/core/en/rep/neigh.c and > > `mlx5e_rep_netevent_event` in > > drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c still > > use `NETEVENT_DELAY_PROBE_TIME_UPDATE` to receive the update event of > > `DELAY_PROBE_TIME` as the probe interval. > > > > I think we are supposed to replace `NETEVENT_DELAY_PROBE_TIME_UPDATE` with > > `NETEVENT_INTERVAL_PROBE_TIME_UPDATE` after this patch is merged. > > AFAICS the event notification is to let neigh_timer_handler() cope > properly with NIC offloading the data plane. > > In such scenario packets (forwarded by the NIC) don't reach the host, > and neigh->confirmed can be untouched for a long time fooling > neigh_timer_handler() into a timeout. > > The event notification allows the NIC to perform the correct actions to > avoid such timeout. > > In case of MANAGED neighbour, the host is periodically sending probe > request, and both req/replies should not be offloaded. AFAICS no action > is expected from the NIC to cope with INTERVAL_PROBE_TIME changes. I think `INTERVAL_PROBE_TIME` is not only for MANAGED neighbour, if the driver needs periodically poll the device for neighbours activity, we also should use `INTERVAL_PROBE_TIME` rather than `DELAY_PROBE_TIME` as the polling interval. but as Link: https://lore.kernel.org/netdev/20211011121238.25542-5-daniel@iogearbox.net/ > mlxsw which has similar driver-internal infrastructure > c723c735fa6b ("mlxsw: spectrum_router: Periodically update the kernel's neigh table"). > In future, the latter could possibly reuse the NTF_MANAGED neighbors as well. It seems that the behavior probe periodically by the driver will be deprecated and replaced by setting the MANAGED flag. or we can keep using `DELAY_PROBE_TIME` before it is replaced? Look forward to your reply. Yuwei Wang
Powered by blists - more mailing lists