Skip to content

Driver upgrade for mlx4

Mohammad Kabat requested to merge mkabat/centos-stream-9:2049443 into main

Description:

Hi all,

This MR includes mlx4 driver patches from kernels 5.15-5.18

Dependencies:

Bugzilla:

Bugzilla: http://bugzilla.redhat.com/2049443

Upstream-status:

All patches are accepted upstream to Linus tree.
Each patch commit message describes its origin.

Testing:

This patch set passed incremental build testing to verify that it is bisectable.
Sanity tests ran over mlx4 drivers on x86_64 systems (using ConnectX-3),
including the following:
Ethernet:
-- IPv4 traffic (ICMP, TCP, UDP).
-- IPv6 traffic (ICMP, TCP, UDP).

VLAN:
-- IPv4 traffic (ICMP, TCP, UDP).
-- IPv6 traffic (ICMP, TCP, UDP).

RoCE:
-- RDMA (ibv_*_pingpong).
-- RDMACM (examples that comes with librdmacm packages).

Infiniband:
-- RDMA (ibv_*_pingpong).
-- RDMACM (examples that comes with librdmacm packages).

IPoIB:
-- IPv4 traffic (ICMP, TCP, UDP).
-- IPv6 traffic (ICMP, TCP, UDP).

PKey:
-- IPv4 traffic (ICMP, TCP, UDP).
-- IPv6 traffic (ICMP, TCP, UDP).

NFSoRDMA:
-- Discover, mount and write.

iSER:
-- Discover, login and mount.

SRP:
-- Verify srp_daemon service is up and system can discover SRP targets.

Signed-off-by: Mohammad Kabat mkabat@redhat.com

df4991ab (Mohammad Kabat)
net/mlx4_en: use kzalloc

dfaa8525 (Mohammad Kabat)
net/mlx4: Delete useless moduleparam include

3efa5d1b (Mohammad Kabat)
RDMA/mlx4: remove redundant assignment to variable nreq

e8ffd8fb (Mohammad Kabat)
RDMA/mlx4: Delete useless module.h include

eb66b343 (Mohammad Kabat)
RDMA/mlx4: Don't continue event handler after memory allocation failure

cc682c48 (Mohammad Kabat)
net/mlx4: Use irq_update_affinity_hint()

c708fc2a (Mohammad Kabat)
RDMA/mlx4: Use bitmap_alloc() when applicable

e74e8272 (Mohammad Kabat)
net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources()

8b3e20a1 (Mohammad Kabat)
net/mlx4_en: Update reported link modes for 1/10G

6f5d6be0 (Mohammad Kabat)
RDMA/mlx4: Do not fail the registration on port stats

fed866d2 (Mohammad Kabat)
net: convert users of bitmap_foo() to linkmode_foo()

e7ba17f1 (Mohammad Kabat)
RDMA/mlx4: Return missed an error if device doesn't support steering

7a86647d (Mohammad Kabat)
mlx4: constify args for const dev_addr

9bed9751 (Mohammad Kabat)
mlx4: remove custom dev_addr clearing

78159ebf (Mohammad Kabat)
mlx4: replace mlx4_u64_to_mac() with u64_to_ether_addr()

7e83d5c3 (Mohammad Kabat)
mlx4: replace mlx4_mac_to_u64() with ether_addr_to_u64()

64e4ddbf (Mohammad Kabat)
net/mlx4_en: avoid one cache line miss to ring doorbell

e6619ced (Mohammad Kabat)
net/mlx4_en: Add XDP_REDIRECT statistics

ca8d8642 (Mohammad Kabat)
net/mlx4: Use array_size() helper in copy_to_user()

17ec4dc7 (Mohammad Kabat)
net: mlx4: Add support for XDP_REDIRECT

0f111fdb (Mohammad Kabat)
net/mlx4_en: Don't allow aRFS for encapsulated packets

5d6b2dae (Mohammad Kabat)
net/mlx4_en: Resolve bad operstate value

8c63f388 (Mohammad Kabat)
net/mlx4: Use ARRAY_SIZE to get an array's size

ca5da71c (Mohammad Kabat)
net/mlx4: make the array states static const, makes object smaller

drivers/infiniband/core/verbs.c | 7 +-
drivers/infiniband/hw/mlx4/alias_GUID.c | 1 -
drivers/infiniband/hw/mlx4/main.c | 32 +-
drivers/infiniband/hw/mlx4/qp.c | 6 +-
drivers/infiniband/hw/mlx4/srq.c | 1 -
drivers/net/ethernet/mellanox/mlx4/cmd.c | 6 +-
drivers/net/ethernet/mellanox/mlx4/cq.c | 3 +-
drivers/net/ethernet/mellanox/mlx4/en_ethtool.c | 35 +-
drivers/net/ethernet/mellanox/mlx4/en_main.c | 1 -
drivers/net/ethernet/mellanox/mlx4/en_netdev.c | 97 +-
drivers/net/ethernet/mellanox/mlx4/en_port.c | 4 +
drivers/net/ethernet/mellanox/mlx4/en_rx.c | 22 +-
drivers/net/ethernet/mellanox/mlx4/en_tx.c | 19 +-
drivers/net/ethernet/mellanox/mlx4/eq.c | 8 +-
drivers/net/ethernet/mellanox/mlx4/fw.c | 2 +-
drivers/net/ethernet/mellanox/mlx4/main.c | 13 +-
drivers/net/ethernet/mellanox/mlx4/mcg.c | 2 +-
drivers/net/ethernet/mellanox/mlx4/mlx4_en.h | 4 +-
drivers/net/ethernet/mellanox/mlx4/mlx4_stats.h | 4 +-
drivers/net/ethernet/mellanox/mlx4/qp.c | 4 +-
include/linux/if_vlan.h | 6 +-
include/linux/mlx4/device.h | 2 +-
include/linux/mlx4/driver.h | 22 -

Edited by Mohammad Kabat

Merge request reports