Skip to content

qed*: driver updates

Manish Chopra requested to merge mchopra/centos-stream-9:bz2040279 into main

Description:

This patch set updates QED(core)/QEDE(L2)/QEDR(rdma) drivers in RHEL from recent upstream kernel.

BZs:

Bugzilla: https://bugzilla.redhat.com/2040279

Upstream:

Linus's master tree.

Testing:

Basic drivers regressions test cases (including below specifically) were passed.

L2 Coverage: IPv4/IPv6/NFS/TSO/LRO/RSS/MTU/VLAN/VxLAN/ TCP & UDP traffic

RoCE/iWARP Coverage: Perftest BW/Lat, rdma_cm applications iSER NFSoRDMA NVMe

Signed-off-by: Manish Chopra mchopra@redhat.com


Manish Chopra (55): net: qed: remove unneeded return variables qed: Remove the qed module version qede: Remove the qede module version RDMA/qed: Use accurate error num in qed_cxt_dynamic_ilt_alloc RDMA/qedr: Improve error logs for rdma_alloc_tid error return qed: Avoid db_recovery during recovery qed: Skip DORQ attention handling during recovery qed: Remove redundant prints from the iWARP SYN handling qed: Remove duplicated include of kernel.h RDMA/qedr: Move variables reset to qedr_set_common_qp_params() qed: Enable automatic recovery on error condition. qed: Handle management FW error qed: Improve the stack space of filter_config() qed: rdma - don't wait for resources under hw error recovery flow qed: Fix kernel-doc warnings qed: Remove e4_ and _e4 from FW HSI qed: Split huge qed_hsi.h header file qed: Update common_hsi for FW ver 8.59.1.0 qed: Update qed_mfw_hsi.h for FW ver 8.59.1.0 qed: Update qed_hsi.h for fw 8.59.1.0 qed: Use enum as per FW 8.59.1.0 in qed_iro_hsi.h qed: Update FW init functions to support FW 8.59.1.0 qed: Add '_GTT' suffix to the IRO RAM macros qed: Update debug related changes qed: Update TCP silly-window-syndrome timeout for iwarp, scsi qed: Update the TCP active termination 2 MSL timer ("TIME_WAIT") qed: fix ll2 establishment during load of RDMA driver qed: Fix spelling mistake "ctx_bsaed" -> "ctx_based" qed: Initialize debug string array qed: Fix compilation for CONFIG_QED_SRIOV undefined scenario qed: Fix missing error code in qed_slowpath_start() net: qed_debug: fix check of false (grc_param < 0) expression qed: Optimize the ll2 ooo flow qed: Change the TCP common variable - "iscsi_ooo" RDMA/qedr: Remove unsupported qedr_resize_cq callback net: qed_ptp: fix check of true !rc expression net: qed_dev: fix check of true !rc expression RDMA/qedr: Fix NULL deref for query_qp on the GSI QP RDMA/qed: Use helper function to set GUIDs qed: Use the bitmap API to simplify some functions net: qed: fix the array may be out of bound qed: Enhance rammod debug prints to provide pretty details qede: validate non LSO skb length qed*: enhance tx timeout debug info qed*: esl priv flag support through ethtool qed: Use dma_set_mask_and_coherent() and simplify code qed: use msleep() in qed_mcp_cmd() and add qed_mcp_cmd_nosleep() for udelay. qed: prevent a fw assert during device shutdown qed: display VF trust config qed: validate and restrict untrusted VFs vlan promisc mode net: qlogic: check the return value of dma_alloc_coherent() in qed_vf_hw_prepare() qed: return status of qed_iov_get_link qed: remove unnecessary memset in qed_init_fw_funcs qede: confirm skb is allocated before using qed: fix ethtool register dump

drivers/infiniband/hw/qedr/main.c | 3 +- drivers/infiniband/hw/qedr/verbs.c | 75 +- drivers/infiniband/hw/qedr/verbs.h | 1 - drivers/net/ethernet/qlogic/qed/qed.h | 59 +- drivers/net/ethernet/qlogic/qed/qed_cxt.c | 44 +- drivers/net/ethernet/qlogic/qed/qed_cxt.h | 143 +- drivers/net/ethernet/qlogic/qed/qed_dbg_hsi.h | 1491 ++ drivers/net/ethernet/qlogic/qed/qed_dcbx.c | 6 +- drivers/net/ethernet/qlogic/qed/qed_dcbx.h | 11 +- drivers/net/ethernet/qlogic/qed/qed_debug.c | 1389 +- drivers/net/ethernet/qlogic/qed/qed_debug.h | 7 +- drivers/net/ethernet/qlogic/qed/qed_dev.c | 127 +- drivers/net/ethernet/qlogic/qed/qed_dev_api.h | 345 +- drivers/net/ethernet/qlogic/qed/qed_devlink.c | 2 +- drivers/net/ethernet/qlogic/qed/qed_fcoe.c | 25 +- drivers/net/ethernet/qlogic/qed/qed_hsi.h | 12644 +++++++--------- drivers/net/ethernet/qlogic/qed/qed_hw.h | 222 +- .../ethernet/qlogic/qed/qed_init_fw_funcs.c | 509 +- .../net/ethernet/qlogic/qed/qed_init_ops.c | 98 +- .../net/ethernet/qlogic/qed/qed_init_ops.h | 60 +- drivers/net/ethernet/qlogic/qed/qed_int.c | 54 +- drivers/net/ethernet/qlogic/qed/qed_int.h | 299 +- drivers/net/ethernet/qlogic/qed/qed_iro_hsi.h | 500 + drivers/net/ethernet/qlogic/qed/qed_iscsi.c | 15 +- drivers/net/ethernet/qlogic/qed/qed_iscsi.h | 9 +- drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 12 +- drivers/net/ethernet/qlogic/qed/qed_l2.c | 41 +- drivers/net/ethernet/qlogic/qed/qed_l2.h | 135 +- drivers/net/ethernet/qlogic/qed/qed_ll2.c | 167 +- drivers/net/ethernet/qlogic/qed/qed_ll2.h | 131 +- drivers/net/ethernet/qlogic/qed/qed_main.c | 128 +- drivers/net/ethernet/qlogic/qed/qed_mcp.c | 183 +- drivers/net/ethernet/qlogic/qed/qed_mcp.h | 819 +- drivers/net/ethernet/qlogic/qed/qed_mfw_hsi.h | 2475 +++ .../qlogic/qed/qed_nvmetcp_fw_funcs.c | 1 - drivers/net/ethernet/qlogic/qed/qed_ooo.c | 20 +- drivers/net/ethernet/qlogic/qed/qed_ptp.c | 4 +- drivers/net/ethernet/qlogic/qed/qed_rdma.c | 24 +- drivers/net/ethernet/qlogic/qed/qed_rdma.h | 7 +- .../net/ethernet/qlogic/qed/qed_reg_addr.h | 105 +- drivers/net/ethernet/qlogic/qed/qed_roce.c | 9 +- .../net/ethernet/qlogic/qed/qed_selftest.h | 30 +- drivers/net/ethernet/qlogic/qed/qed_sp.h | 223 +- .../net/ethernet/qlogic/qed/qed_sp_commands.c | 20 +- drivers/net/ethernet/qlogic/qed/qed_spq.c | 105 +- drivers/net/ethernet/qlogic/qed/qed_sriov.c | 247 +- drivers/net/ethernet/qlogic/qed/qed_sriov.h | 139 +- drivers/net/ethernet/qlogic/qed/qed_vf.c | 18 +- drivers/net/ethernet/qlogic/qed/qed_vf.h | 307 +- drivers/net/ethernet/qlogic/qede/qede.h | 9 - .../net/ethernet/qlogic/qede/qede_ethtool.c | 19 +- .../net/ethernet/qlogic/qede/qede_filter.c | 47 +- drivers/net/ethernet/qlogic/qede/qede_fp.c | 10 + drivers/net/ethernet/qlogic/qede/qede_main.c | 129 +- drivers/scsi/qedf/drv_fcoe_fw_funcs.c | 8 +- drivers/scsi/qedf/drv_fcoe_fw_funcs.h | 2 +- drivers/scsi/qedf/qedf.h | 4 +- drivers/scsi/qedf/qedf_els.c | 2 +- drivers/scsi/qedf/qedf_io.c | 12 +- drivers/scsi/qedf/qedf_main.c | 8 +- drivers/scsi/qedi/qedi_debugfs.c | 4 +- drivers/scsi/qedi/qedi_fw.c | 40 +- drivers/scsi/qedi/qedi_fw_api.c | 22 +- drivers/scsi/qedi/qedi_fw_iscsi.h | 2 +- drivers/scsi/qedi/qedi_iscsi.h | 2 +- drivers/scsi/qedi/qedi_main.c | 11 +- include/linux/qed/common_hsi.h | 141 +- include/linux/qed/eth_common.h | 1 + include/linux/qed/fcoe_common.h | 362 +- include/linux/qed/iscsi_common.h | 360 +- include/linux/qed/nvmetcp_common.h | 18 +- include/linux/qed/qed_chain.h | 97 +- include/linux/qed/qed_eth_if.h | 21 +- include/linux/qed/qed_if.h | 277 +- include/linux/qed/qed_iscsi_if.h | 2 +- include/linux/qed/qed_ll2_if.h | 42 +- include/linux/qed/qed_nvmetcp_if.h | 17 + include/linux/qed/rdma_common.h | 1 + 78 files changed, 14393 insertions(+), 10765 deletions(-) create mode 100644 drivers/net/ethernet/qlogic/qed/qed_dbg_hsi.h create mode 100644 drivers/net/ethernet/qlogic/qed/qed_iro_hsi.h create mode 100644 drivers/net/ethernet/qlogic/qed/qed_mfw_hsi.h

Edited by Manish Chopra

Merge request reports