Re: [PATCH net] octeontx2-af: validate MCS blocks before initialization
From: Ratheesh Kannoth
Date: Sun Sep 13 2026 - 23:15:34 EST
On 2026-09-13 at 18:22:06, Slavin Liu (bolin.liu@xxxxxxxxxx) wrote:
> 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 <bolin.liu@xxxxxxxxxx>
> ---
> 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);