Skip to content

Commit 011be34

Browse files
Jianbo Liukuba-moo
authored andcommitted
net/mlx5e: Skip ESN replay window setup for IPsec crypto offload
Commit a5e400a ("net/mlx5e: Honor user choice of IPsec replay window size") introduced logic to setup the ESN replay window size. This logic is only valid for packet offload. However, the check to skip this block only covered outbound offloads. It was not skipped for crypto offload, causing it to fall through to the new switch statement and trigger its WARN_ON default case (for instance, if a window larger than 256 bits was configured). Fix this by amending the condition to also skip the replay window setup if the offload type is not XFRM_DEV_OFFLOAD_PACKET. Fixes: a5e400a ("net/mlx5e: Honor user choice of IPsec replay window size") Signed-off-by: Jianbo Liu <jianbol@nvidia.com> Reviewed-by: Leon Romanovsky <leonro@nvidia.com> Reviewed-by: Simon Horman <horms@kernel.org> Signed-off-by: Tariq Toukan <tariqt@nvidia.com> Link: https://patch.msgid.link/1769503961-124173-5-git-send-email-tariqt@nvidia.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent a8f930b commit 011be34

1 file changed

Lines changed: 2 additions & 1 deletion

File tree

  • drivers/net/ethernet/mellanox/mlx5/core/en_accel

drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,8 @@ void mlx5e_ipsec_build_accel_xfrm_attrs(struct mlx5e_ipsec_sa_entry *sa_entry,
430430
attrs->replay_esn.esn = sa_entry->esn_state.esn;
431431
attrs->replay_esn.esn_msb = sa_entry->esn_state.esn_msb;
432432
attrs->replay_esn.overlap = sa_entry->esn_state.overlap;
433-
if (attrs->dir == XFRM_DEV_OFFLOAD_OUT)
433+
if (attrs->dir == XFRM_DEV_OFFLOAD_OUT ||
434+
x->xso.type != XFRM_DEV_OFFLOAD_PACKET)
434435
goto skip_replay_window;
435436

436437
switch (x->replay_esn->replay_window) {

0 commit comments

Comments
 (0)