octeontx2-pf: mcs: Fix mcs resources free on PF shutdown

[ Upstream commit 450d0e90b1 ]

On PF shutdown, the current driver free mcs hardware
resources though mcs resources are not allocated to it.
This patch checks the mcs resources status and if resources
are allocated then only sends mailbox message to free them.

Fixes: c54ffc7360 ("octeontx2-pf: mcs: Introduce MACSEC hardware offloading")
Signed-off-by: Geetha sowjanya <gakula@marvell.com>
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Link: https://patch.msgid.link/1781636420-19816-3-git-send-email-sbhatta@marvell.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Geetha sowjanya
2026-07-24 16:03:21 +02:00
committed by Greg Kroah-Hartman
parent ab9c0b007c
commit e88b1ff95f
@@ -1808,11 +1808,16 @@ fail:
void cn10k_mcs_free(struct otx2_nic *pfvf)
{
struct cn10k_mcs_cfg *cfg = pfvf->macsec_cfg;
if (!test_bit(CN10K_HW_MACSEC, &pfvf->hw.cap_flag))
return;
cn10k_mcs_free_rsrc(pfvf, MCS_TX, MCS_RSRC_TYPE_SECY, 0, true);
cn10k_mcs_free_rsrc(pfvf, MCS_RX, MCS_RSRC_TYPE_SECY, 0, true);
if (!list_empty(&cfg->txsc_list)) {
cn10k_mcs_free_rsrc(pfvf, MCS_TX, MCS_RSRC_TYPE_SECY, 0, true);
cn10k_mcs_free_rsrc(pfvf, MCS_RX, MCS_RSRC_TYPE_SECY, 0, true);
}
kfree(pfvf->macsec_cfg);
pfvf->macsec_cfg = NULL;
}