> -----Original Message-----
> From: Stephen Hemminger <step...@networkplumber.org>
> Sent: Tuesday, October 22, 2024 17:41
> To: Dariusz Sosnowski <dsosnow...@nvidia.com>
> Cc: Slava Ovsiienko <viachesl...@nvidia.com>; Bing Zhao <bi...@nvidia.com>;
> Ori Kam <or...@nvidia.com>; Suanming Mou <suanmi...@nvidia.com>; Matan
> Azrad <ma...@nvidia.com>; dev@dpdk.org
> Subject: Re: [PATCH v2 00/10] net/mlx5: improve MAC address and VLAN add
> latency
> 
> On Tue, 22 Oct 2024 14:06:08 +0200
> Dariusz Sosnowski <dsosnow...@nvidia.com> wrote:
> 
> > Whenever a new MAC address is added to the port, mlx5 PMD will:
> >
> > - Add this address to `dev->data->mac_addrs[]`.
> > - Destroy all control flow rules.
> > - Recreate all control flow rules.
> >
> > Similar logic is also implemented for VLAN filters.
> >
> > Because of such logic, the latency of adding the new MAC address
> > (i.e., latency of `rte_eth_dev_mac_addr_add()` function call) is
> > actually linear to number of MAC addresses already configured.
> > Since each operation of creating/destroying a control flow rule,
> > involves an `ioctl()` syscall, on some setups the latency of adding a
> > single MAC address can reach ~100ms, when port is operating with >= 100 MAC
> addresses.
> > The same problem exists for VLAN filters (and even compounded by it).
> >
> > This patchset aims to resolve these issues, by reworking how mlx5 PMD
> > handles adding/removing MAC addresses and VLAN filters.
> > Instead of recreating all control flow rules, only necessary flow
> > rules will be created/removed on each operation, thus minimizing
> > number of syscalls triggered.
> 
> Looks good.
> Is there already functional test which does this? Mlx5 may not be alone in 
> having
> this problem.

I could not find any existing functional test in DPDK or DTS for such a 
scenario.

Reply via email to