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
| ||
|
Message-ID: <20230807175642.20834-1-saeed@kernel.org> Date: Mon, 7 Aug 2023 10:56:27 -0700 From: Saeed Mahameed <saeed@...nel.org> To: "David S. Miller" <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, Eric Dumazet <edumazet@...gle.com> Cc: Saeed Mahameed <saeedm@...dia.com>, netdev@...r.kernel.org, Tariq Toukan <tariqt@...dia.com> Subject: [pull request][net-next 00/15] mlx5 updates 2023-08-07 From: Saeed Mahameed <saeedm@...dia.com> This series provides some minor cleanup and Dynamic completion EQ allocation mechanism in the mlx5 driver. For more information please see tag log below. Please pull and let me know if there is any problem. Thanks, Saeed. The following changes since commit cc97777c80fdfabe12997581131872a03fdcf683: udp/udplite: Remove unused function declarations udp{,lite}_get_port() (2023-08-07 08:53:55 +0100) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux.git tags/mlx5-updates-2023-08-07 for you to fetch changes up to b56fb19c337951fc4daba646fab2c50bb4c41c58: net/mlx5: Bridge, Only handle registered netdev bridge events (2023-08-07 10:53:52 -0700) ---------------------------------------------------------------- mlx5-updates-2023-08-07 1) Few cleanups 2) Dynamic completion EQs The driver creates completion EQs for all vectors directly on driver load, even if those EQs will not be utilized later on. To allow more flexibility in managing completion EQs and to reduce the memory overhead of driver load, this series will adjust completion EQs creation to be dynamic. Meaning, completion EQs will be created only when needed. Patch #1 introduces a counter for tracking the current number of completion EQs. Patches #2-6 refactor the existing infrastructure of managing completion EQs and completion IRQs to be compatible with per-vector allocation/release requests. Patches #7-8 modify the CPU-to-IRQ affinity calculation to be resilient in case the affinity is requested but completion IRQ is not allocated yet. Patch #9 function rename. Patch #10 handles the corner case of SF performing an IRQ request when no SF IRQ pool is found, and no PF IRQ exists for the same vector. Patch #11 modify driver to use dynamically allocate completion EQs. ---------------------------------------------------------------- Gal Pressman (1): net/mlx5: Fix typo reminder -> remainder Maher Sanalla (11): net/mlx5: Track the current number of completion EQs net/mlx5: Refactor completion IRQ request/release API net/mlx5: Use xarray to store and manage completion IRQs net/mlx5: Refactor completion IRQ request/release handlers in EQ layer net/mlx5: Use xarray to store and manage completion EQs net/mlx5: Implement single completion EQ create/destroy methods net/mlx5: Introduce mlx5_cpumask_default_spread net/mlx5: Add IRQ vector to CPU lookup function net/mlx5: Rename mlx5_comp_vectors_count() to mlx5_comp_vectors_max() net/mlx5: Handle SF IRQ request in the absence of SF IRQ pool net/mlx5: Allocate completion EQs dynamically Roi Dayan (2): net/mlx5: E-Switch, Remove redundant arg ignore_flow_lvl net/mlx5: Bridge, Only handle registered netdev bridge events Ruan Jinjie (1): net/mlx5: remove many unnecessary NULL values drivers/infiniband/hw/mlx5/cq.c | 2 +- drivers/infiniband/hw/mlx5/devx.c | 2 +- drivers/infiniband/hw/mlx5/main.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en.h | 2 +- .../ethernet/mellanox/mlx5/core/en/rep/bridge.c | 4 + drivers/net/ethernet/mellanox/mlx5/core/en/trap.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 10 +- drivers/net/ethernet/mellanox/mlx5/core/eq.c | 360 ++++++++++++--------- drivers/net/ethernet/mellanox/mlx5/core/esw/qos.c | 6 +- .../ethernet/mellanox/mlx5/core/eswitch_offloads.c | 6 +- .../net/ethernet/mellanox/mlx5/core/fpga/conn.c | 2 +- .../net/ethernet/mellanox/mlx5/core/fpga/core.c | 4 +- .../net/ethernet/mellanox/mlx5/core/irq_affinity.c | 78 ++--- drivers/net/ethernet/mellanox/mlx5/core/lib/aso.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/lib/eq.h | 2 +- .../net/ethernet/mellanox/mlx5/core/lib/hv_vhca.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/mlx5_irq.h | 26 +- drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c | 60 ++-- .../ethernet/mellanox/mlx5/core/steering/dr_send.c | 4 +- drivers/vdpa/mlx5/net/mlx5_vnet.c | 2 +- drivers/vfio/pci/mlx5/cmd.c | 4 +- include/linux/mlx5/driver.h | 7 +- 22 files changed, 309 insertions(+), 280 deletions(-)
Powered by blists - more mailing lists