octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy
authorSubbaraya Sundeep <sbhatta@marvell.com>
Mon, 12 May 2025 12:42:36 +0000 (18:12 +0530)
committerJakub Kicinski <kuba@kernel.org>
Thu, 15 May 2025 02:14:31 +0000 (19:14 -0700)
commit865ab2461375e3a5a2526f91f9a9f17b8931bc9e
tree2169c698600116fda24ef91e6e1f05ac7ab6bb79
parentf3dd5fb2fa494dcbdb10f8d27f2deac8ef61a2fc
octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy

MASCEC hardware block has a field called maximum transmit size for
TX secy. Max packet size going out of MCS block has be programmed
taking into account full packet size which has L2 header,SecTag
and ICV. MACSEC offload driver is configuring max transmit size as
macsec interface MTU which is incorrect. Say with 1500 MTU of real
device, macsec interface created on top of real device will have MTU of
1468(1500 - (SecTag + ICV)). This is causing packets from macsec
interface of size greater than or equal to 1468 are not getting
transmitted out because driver programmed max transmit size as 1468
instead of 1514(1500 + ETH_HDR_LEN).

Fixes: c54ffc73601c ("octeontx2-pf: mcs: Introduce MACSEC hardware offloading")
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/1747053756-4529-1-git-send-email-sbhatta@marvell.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/octeontx2/nic/cn10k_macsec.c