Re: [net PATCH V2] octeontx2-pf: Fix pfc_alloc_status array overflow

From: Maciej Fijalkowski
Date: Fri Nov 25 2022 - 09:58:56 EST


On Wed, Nov 23, 2022 at 04:29:38PM +0530, Suman Ghosh wrote:
> This patch addresses pfc_alloc_status array overflow occurring for

Nit: use imperative mood

> send queue index value greater than PFC priority. Queue index can be
> greater than supported PFC priority for multiple scenarios (e.g. QoS,
> during non zero SMQ allocation for a PF/VF).
> In those scenarios the API should return default tx scheduler '0'.
> This is causing mbox errors as otx2_get_smq_idx returing invalid smq value.
>
> Fixes: 99c969a83d82 ("octeontx2-pf: Add egress PFC support")
> Signed-off-by: Suman Ghosh <sumang@xxxxxxxxxxx>
> ---
> Changes since v1:
> - Updated commit message.
>
> drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@xxxxxxxxx>

>
> diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h
> index 282db6fe3b08..67aa02bb2b85 100644
> --- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h
> +++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h
> @@ -884,7 +884,7 @@ static inline void otx2_dma_unmap_page(struct otx2_nic *pfvf,
> static inline u16 otx2_get_smq_idx(struct otx2_nic *pfvf, u16 qidx)
> {
> #ifdef CONFIG_DCB
> - if (pfvf->pfc_alloc_status[qidx])
> + if (qidx < NIX_PF_PFC_PRIO_MAX && pfvf->pfc_alloc_status[qidx])
> return pfvf->pfc_schq_list[NIX_TXSCH_LVL_SMQ][qidx];
> #endif
>
> --
> 2.25.1
>