[dpdk-dev] [PATCH v8 2/6] net/iavf: add IAVF request queues function

Xu, Ting ting.xu at intel.com
Sun Oct 25 03:28:39 CET 2020


> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit at intel.com>
> Sent: Friday, October 23, 2020 6:07 PM
> To: Xu, Ting <ting.xu at intel.com>; dev at dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang at intel.com>; Xing, Beilei <beilei.xing at intel.com>;
> Wu, Jingjing <jingjing.wu at intel.com>
> Subject: Re: [dpdk-dev] [PATCH v8 2/6] net/iavf: add IAVF request queues
> function
> 
> On 10/22/2020 7:48 AM, Ting Xu wrote:
> > Add a new virtchnl function to request additional queues from PF.
> > Current default queue pairs number when creating a VF is 16. In order
> > to support up to 256 queue pairs per VF, enable this request queues
> function.
> >
> > When requesting queues succeeds, PF will return an event message. If
> > it is handled by interrupt first, the request queues command cannot
> > receive the correct PF response and will wait until timeout.
> 
> Why interrupt is not working? Is the PF not generating an interrupt when this
> request/command executed?
> 

If request queues command succeeds, PF will reset VF and return event message, which will trigger interrupt in the legacy way; if request queues fails, PF will return VIRTCHNL_OP_REQUEST_QUEUES message and report available queues in iavf_read_msg_from_pf() . Therefore, after we send request queues command, we cannot leave to wait for interrupt, but should loop in iavf_execute_vf_cmd() to read adminq message, including event and VIRTCHNL_OP_REQUEST_QUEUES message. So interrupt should be disabled.

> > Therefore, disable
> > interrupt before requesting queues in order to handle the event
> > message asynchronously.
> >
> > Signed-off-by: Ting Xu <ting.xu at intel.com>
> 
> <...>



More information about the dev mailing list