[dpdk-stable] [PATCH] net/iavf: fix queue pairs configuration
Zhang, AlvinX
alvinx.zhang at intel.com
Wed Dec 23 07:28:12 CET 2020
Hi Xuting,
Thanks for your reply.
It's very efficient for CVL. But the FVL PF provides default 4 queue pairs to VF,
if every VF request 16 queue pairs, there may be not enough queues pairs for all VFs.
BR,
Alvin
> -----Original Message-----
> From: Xu, Ting <ting.xu at intel.com>
> Sent: Wednesday, December 23, 2020 2:06 PM
> To: Zhang, AlvinX <alvinx.zhang at intel.com>; Xing, Beilei <beilei.xing at intel.com>
> Cc: dev at dpdk.org; Zhang, AlvinX <alvinx.zhang at intel.com>; stable at dpdk.org
> Subject: RE: [PATCH] net/iavf: fix queue pairs configuration
>
> Hi, Alvin,
>
> > -----Original Message-----
> > From: Zhang,Alvin <alvinx.zhang at intel.com>
> > Sent: Wednesday, December 23, 2020 1:30 PM
> > To: Xing, Beilei <beilei.xing at intel.com>; Xu, Ting <ting.xu at intel.com>
> > Cc: dev at dpdk.org; Zhang, AlvinX <alvinx.zhang at intel.com>;
> > stable at dpdk.org
> > Subject: [PATCH] net/iavf: fix queue pairs configuration
> >
> > From: Alvin Zhang <alvinx.zhang at intel.com>
> >
> > Check if there are enough queue pairs currently allocated, and if not,
> > request PF to allocate them.
> >
> > Fixes: e436cd43835b ("net/iavf: negotiate large VF and request more
> > queues")
> > Cc: stable at dpdk.org
> >
> > Signed-off-by: Alvin Zhang <alvinx.zhang at intel.com>
> > ---
> > drivers/net/iavf/iavf_ethdev.c | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/iavf/iavf_ethdev.c
> > b/drivers/net/iavf/iavf_ethdev.c index 7e3c26a..f015121 100644
> > --- a/drivers/net/iavf/iavf_ethdev.c
> > +++ b/drivers/net/iavf/iavf_ethdev.c
> > @@ -372,8 +372,10 @@ struct rte_iavf_xstats_name_off {
> > } else {
> > /* Check if large VF is already enabled. If so, disable and
> > * release redundant queue resource.
> > + * Or check if enough queue pairs. If not, request them from
> > PF.
> > */
> > - if (vf->lv_enabled) {
> > + if (vf->lv_enabled ||
> > + num_queue_pairs > vf->vsi_res->num_queue_pairs) {
> > ret = iavf_queues_req_reset(dev, num_queue_pairs);
> > if (ret)
> > return ret;
> > --
> > 1.8.3.1
>
> Will it be better to change ret = iavf_queues_req_reset(dev, num_queue_pairs);
> to ret = iavf_queues_req_reset(dev, IAVF_MAX_NUM_QUEUES_DFLT); based on
> the original codes?
> Since PF provides default 16 queue pairs to VF. If large VF is no need to be
> enabled, it may be better to reset the queue pairs number to 16. So that we
> don't need to compare the queue pairs number and request queues each time
> when it is no more than 16. If more, it turns to large VF to handle.
> The original codes here are not good.
> Thanks.
More information about the stable
mailing list