On Wed, Mar 17, 2021 at 5:47 PM Ajit Khaparde wrote: > > The PMD is allocating an extra RSS context with each port start. > But it is freeing only one RSS context during port stop. So at some point > we run out of RSS contexts when we do multiple port stop/start sequences. > bnxt_hwrm_vnic_ctx_alloc() is called by bnxt_setup_one_vnic(), but > bnxt_hwrm_vnic_ctx_free() is not called in the corresponding > bnxt_free_one_vnic(). > > Fix this by calling bnxt_hwrm_vnic_ctx_free() in bnxt_free_one_vnic(). > > Fixes: 7fe5668d2ea3 ("net/bnxt: support VLAN filter and strip") > Cc: stable@dpdk.org > > Signed-off-by: Ajit Khaparde Patch applied to dpdk-next-net-brcm. > --- > drivers/net/bnxt/bnxt_ethdev.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c > index 1997783a7d..ff92f999db 100644 > --- a/drivers/net/bnxt/bnxt_ethdev.c > +++ b/drivers/net/bnxt/bnxt_ethdev.c > @@ -2531,6 +2531,10 @@ static int bnxt_free_one_vnic(struct bnxt *bp, uint16_t vnic_id) > } > bnxt_del_dflt_mac_filter(bp, vnic); > > + rc = bnxt_hwrm_vnic_ctx_free(bp, vnic); > + if (rc) > + return rc; > + > rc = bnxt_hwrm_vnic_free(bp, vnic); > if (rc) > return rc; > -- > 2.21.1 (Apple Git-122.3) >