[PATCH v4] net/iavf: fix iavf query stats in intr thread

Zhang, Qi Z qi.z.zhang at intel.com
Wed Jun 7 06:01:51 CEST 2023



> -----Original Message-----
> From: Deng, KaiwenX <kaiwenx.deng at intel.com>
> Sent: Wednesday, June 7, 2023 10:04 AM
> To: dev at dpdk.org
> Cc: stable at dpdk.org; Yang, Qiming <qiming.yang at intel.com>; Zhou, YidingX
> <yidingx.zhou at intel.com>; Deng, KaiwenX <kaiwenx.deng at intel.com>; Chas
> Williams <chas3 at att.com>; Min Hu (Connor) <humin29 at huawei.com>; Wu,
> Jingjing <jingjing.wu at intel.com>; Xing, Beilei <beilei.xing at intel.com>; Zhang,
> Qi Z <qi.z.zhang at intel.com>; Mike Pattrick <mkp at redhat.com>; Doherty,
> Declan <declan.doherty at intel.com>; Mrzyglod, Daniel T
> <daniel.t.mrzyglod at intel.com>; Dapeng Yu <dapengx.yu at intel.com>
> Subject: [PATCH v4] net/iavf: fix iavf query stats in intr thread
> 
> When iavf send query-stats command in eal-intr-thread through virtual
> channel, there will be no response received from iavf_dev_virtchnl_handler
> for this command during block and wait.
> Because iavf_dev_virtchnl_handler is also registered in eal-intr-thread.
> 
> When vf device is bonded as BONDING_MODE_TLB mode, the slave device
> update callback will registered in alarm and called by eal-intr-thread, it would
> also raise the above issue.
> 
> This commit add to poll the response for VIRTCHNL_OP_GET_STATS when it
> is called by eal-intr-thread to fix this issue.
> 
> Fixes: 91bf37d250aa ("net/iavf: add lock for VF commands")
> Fixes: 22b123a36d07 ("net/avf: initialize PMD")
> Fixes: 7c76a747e68c ("bond: add mode 5")
> Fixes: 435d523112cc ("net/iavf: fix multi-process shared data")
> Fixes: cb5c1b91f76f ("net/iavf: add thread for event callbacks")

To comply with the principles of modularity and separation of concerns, please separate the patch into two distinct fixes, addressing each PMD individually for the bond PMD and iavf PMD.

btw, it would be better to only list the patch that introduced the issue. 
Regarding the missing part of the iavf PMD, it is unable to handle VC commands in the interrupt handler. 
This aspect was not initially considered, so I assume that the following fix line should be sufficient.

Fixes: 22b123a36d07 ("net/avf: initialize PMD")





More information about the stable mailing list