Re: [PATCH net] octeontx2-af: validate MCS blocks before initialization
From: Ratheesh Kannoth <rkannoth@marvell.com>
Date: 2026-09-14 03:12:12
Also in:
lkml
On 2026-09-13 at 18:22:06, Slavin Liu (bolin.liu@seu.edu.cn) wrote:
quoted hunk ↗ jump to hunk
The MCS count is a maximum successful ID plus one, not proof of a dense device set. Validate the complete range before programming any block, so a failed lower-ID probe cannot cause a NULL dereference. Detected by static analysis and reviewed with AI-assisted source auditing. Fixes: 080bbd19c9dd ("octeontx2-af: cn10k: mcs: Add mailboxes for port related operations") Assisted-by: LLM Signed-off-by: Slavin Liu <redacted> --- drivers/net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c | 5 +++++ 1 file changed, 5 insertions(+)diff --git a/drivers/net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c b/drivers/net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c index fce22e314cac..0ee2d0d698e5 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c +++ b/drivers/net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c@@ -889,6 +889,11 @@ int rvu_mcs_init(struct rvu *rvu) rvu_mcs_set_lmac_bmap(rvu); } + for (mcs_id = 0; mcs_id < rvu->mcs_blk_cnt; mcs_id++) { + if (!mcs_get_pdata(mcs_id)) + return -ENODEV; + }
Do we need to move this up to apply for cn10kb as well ?
+
/* Install default tcam bypass entry and set port to operational mode */
for (mcs_id = 0; mcs_id < rvu->mcs_blk_cnt; mcs_id++) {
mcs = mcs_get_pdata(mcs_id);