From: Saeed Mahameed <saeedm@xxxxxxxxxx> Hi Dave, Jakub and Jason, v1->v2: - Fix typo in the 1st patch's title The following PR includes updates to mlx5-next branch: Headlines: ========== 1) Jakub cleans up unused static inline functions 2) I did some low level firmware command interface return status changes to provide the caller with full visibility on the error/status returned by the Firmware. 3) Use the new command interface in RDMA DEVX usecases to avoid flooding dmesg with some "expected" user error prone use cases. 4) Moshe also uses the new command interface to grab the specific error code from MFRL register command to provide the exact error reason for why SW reset couldn't perform internally in FW. 5) From Mark Bloch: Lag, drop packets in hardware when possible In active-backup mode the inactive interface's packets are dropped by the bond device. In switchdev where TC rules are offloaded to the FDB this can lead to packets being hit in the FDB where without offload they would have been dropped before reaching TC rules in the kernel. Create a drop rule to make sure packets on inactive ports are dropped before reaching the FDB. Listen on NETDEV_CHANGEUPPER / NETDEV_CHANGEINFODATA events and record the inactive state and offload accordingly. ========== Please pull and let me know if there's any problem. The following changes since commit e783362eb54cd99b2cac8b3a9aeac942e6f6ac07: Linux 5.17-rc1 (2022-01-23 10:12:53 +0200) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git mlx5-next for you to fetch changes up to 45fee8edb4b333af79efad7a99de51718ebda94b: net/mlx5: Add clarification on sync reset failure (2022-02-23 15:21:59 -0800) ---------------------------------------------------------------- Jakub Kicinski (1): mlx5: remove unused static inlines Mark Bloch (7): net/mlx5: Add ability to insert to specific flow group net/mlx5: E-switch, remove special uplink ingress ACL handling net/mlx5: E-switch, add drop rule support to ingress ACL net/mlx5: Lag, use local variable already defined to access E-Switch net/mlx5: Lag, don't use magic numbers for ports net/mlx5: Lag, record inactive state of bond device net/mlx5: Lag, offload active-backup drops to hardware Moshe Shemesh (2): net/mlx5: Add reset_state field to MFRL register net/mlx5: Add clarification on sync reset failure Saeed Mahameed (6): net/mlx5: cmdif, Return value improvements net/mlx5: cmdif, cmd_check refactoring net/mlx5: cmdif, Add new api for command execution net/mlx5: Use mlx5_cmd_do() in core create_{cq,dct} net/mlx5: cmdif, Refactor error handling and reporting of async commands RDMA/mlx5: Use new command interface API Sunil Rani (1): net/mlx5: E-Switch, reserve and use same uplink metadata across ports drivers/infiniband/hw/mlx5/devx.c | 61 +++++++------ drivers/infiniband/hw/mlx5/mr.c | 15 +++- drivers/infiniband/hw/mlx5/qp.c | 1 + drivers/infiniband/hw/mlx5/qpc.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/cmd.c | 328 +++++++++++++++++++++++++++++++++++++++++++-------------------------- drivers/net/ethernet/mellanox/mlx5/core/cq.c | 17 +++- drivers/net/ethernet/mellanox/mlx5/core/devlink.c | 10 +-- drivers/net/ethernet/mellanox/mlx5/core/en_accel/en_accel.h | 9 -- drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ingress_ofld.c | 87 +++++++++++++++++++ drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ofld.h | 15 ++++ drivers/net/ethernet/mellanox/mlx5/core/eswitch.h | 3 + drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 93 ++++++-------------- drivers/net/ethernet/mellanox/mlx5/core/fs_core.c | 9 +- drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c | 57 ++++++++++-- drivers/net/ethernet/mellanox/mlx5/core/fw_reset.h | 3 +- drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c | 142 +++++++++++++++++++++++++++--- drivers/net/ethernet/mellanox/mlx5/core/lag/lag.h | 2 + drivers/net/ethernet/mellanox/mlx5/core/lag/mp.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/lib/hv_vhca.h | 7 -- drivers/net/ethernet/mellanox/mlx5/core/main.c | 5 +- drivers/net/ethernet/mellanox/mlx5/core/port.c | 20 ++++- include/linux/mlx5/cq.h | 2 + include/linux/mlx5/driver.h | 19 ++-- include/linux/mlx5/fs.h | 1 + include/linux/mlx5/mlx5_ifc.h | 14 ++- 25 files changed, 640 insertions(+), 284 deletions(-) -- 2.35.1