* iavf: rte_eth_stats_get() fails upon upgrade to 23.07.0 @ 2024-02-27 11:27 Isaac Boukris 2024-02-27 14:28 ` Isaac Boukris 0 siblings, 1 reply; 4+ messages in thread From: Isaac Boukris @ 2024-02-27 11:27 UTC (permalink / raw) To: users Hello, This works fine with 23.03.0 but starting from 23.07.0 up to master it fails as follows. Initialization is ok: EAL: Probe PCI driver: net_iavf (8086:154c) device: 0000:09:00.0 (socket -1) iavf_set_rx_function(): request RXDID[1] in Queue[0] is legacy, set rx_pkt_burst as legacy for all queues telemetry.py /ethdev/link_status,0 | jq { "/ethdev/link_status": { "status": "UP", "speed": 40000, "duplex": "full-duplex" } } But the following command hang and fail: telemetry.py /ethdev/stats,0 | jq telemetry.py /ethdev/xstats,0 | jq On the logs I see: iavf_execute_vf_cmd(): No response for cmd 15 iavf_query_stats(): fail to execute command OP_GET_STATS iavf_dev_stats_get(): Get statistics failed Any ideas? Thanks! ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: iavf: rte_eth_stats_get() fails upon upgrade to 23.07.0 2024-02-27 11:27 iavf: rte_eth_stats_get() fails upon upgrade to 23.07.0 Isaac Boukris @ 2024-02-27 14:28 ` Isaac Boukris 2024-02-27 19:24 ` Isaac Boukris 0 siblings, 1 reply; 4+ messages in thread From: Isaac Boukris @ 2024-02-27 14:28 UTC (permalink / raw) To: users, jingjing.wu, beilei.xing, wenzhuo.lu, qi.z.zhang On Tue, Feb 27, 2024 at 1:27 PM Isaac Boukris <iboukris@gmail.com> wrote: > > Hello, > > This works fine with 23.03.0 but starting from 23.07.0 up to master it > fails as follows. > > Initialization is ok: > EAL: Probe PCI driver: net_iavf (8086:154c) device: 0000:09:00.0 (socket -1) > iavf_set_rx_function(): request RXDID[1] in Queue[0] is legacy, set > rx_pkt_burst as legacy for all queues > > telemetry.py /ethdev/link_status,0 | jq > { > "/ethdev/link_status": { > "status": "UP", > "speed": 40000, > "duplex": "full-duplex" > } > } > > But the following command hang and fail: > telemetry.py /ethdev/stats,0 | jq > telemetry.py /ethdev/xstats,0 | jq > > On the logs I see: > iavf_execute_vf_cmd(): No response for cmd 15 > iavf_query_stats(): fail to execute command OP_GET_STATS > iavf_dev_stats_get(): Get statistics failed I did some git bisect and found the commit below, help appreciated! 5712bf9d6e14d0eaa7a07814d59351ffeb8e02ed is the first bad commit commit 5712bf9d6e14d0eaa7a07814d59351ffeb8e02ed Author: Wenzhuo Lu <wenzhuo.lu@intel.com> Date: Tue Apr 18 13:11:05 2023 +0800 net/iavf: add Tx AVX2 offload path Add a specific path for TX AVX2. In this path, support the HW offload features, like, checksum insertion, VLAN insertion. This path is chosen automatically according to the configuration. 'inline' is used, then the duplicate code is generated by the compiler. Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com> Acked-by: Qi Zhang <qi.z.zhang@intel.com> drivers/net/iavf/iavf_rxtx.c | 33 +++++++++++++-------- drivers/net/iavf/iavf_rxtx.h | 2 ++ drivers/net/iavf/iavf_rxtx_vec_avx2.c | 54 +++++++++++++++++++++++++---------- 3 files changed, 62 insertions(+), 27 deletions(-) ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: iavf: rte_eth_stats_get() fails upon upgrade to 23.07.0 2024-02-27 14:28 ` Isaac Boukris @ 2024-02-27 19:24 ` Isaac Boukris 2024-12-11 20:51 ` Isaac Boukris 0 siblings, 1 reply; 4+ messages in thread From: Isaac Boukris @ 2024-02-27 19:24 UTC (permalink / raw) To: users, jingjing.wu, beilei.xing, wenzhuo.lu, qi.z.zhang On Tue, Feb 27, 2024 at 4:28 PM Isaac Boukris <iboukris@gmail.com> wrote: > > On Tue, Feb 27, 2024 at 1:27 PM Isaac Boukris <iboukris@gmail.com> wrote: > > > > Hello, > > > > This works fine with 23.03.0 but starting from 23.07.0 up to master it > > fails as follows. > > > > Initialization is ok: > > EAL: Probe PCI driver: net_iavf (8086:154c) device: 0000:09:00.0 (socket -1) > > iavf_set_rx_function(): request RXDID[1] in Queue[0] is legacy, set > > rx_pkt_burst as legacy for all queues > > > > telemetry.py /ethdev/link_status,0 | jq > > { > > "/ethdev/link_status": { > > "status": "UP", > > "speed": 40000, > > "duplex": "full-duplex" > > } > > } > > > > But the following command hang and fail: > > telemetry.py /ethdev/stats,0 | jq > > telemetry.py /ethdev/xstats,0 | jq > > > > On the logs I see: > > iavf_execute_vf_cmd(): No response for cmd 15 > > iavf_query_stats(): fail to execute command OP_GET_STATS > > iavf_dev_stats_get(): Get statistics failed > > I did some git bisect and found the commit below, help appreciated! > > 5712bf9d6e14d0eaa7a07814d59351ffeb8e02ed is the first bad commit > commit 5712bf9d6e14d0eaa7a07814d59351ffeb8e02ed > Author: Wenzhuo Lu <wenzhuo.lu@intel.com> > Date: Tue Apr 18 13:11:05 2023 +0800 > > net/iavf: add Tx AVX2 offload path > > Add a specific path for TX AVX2. > In this path, support the HW offload features, like, > checksum insertion, VLAN insertion. > This path is chosen automatically according to the > configuration. > > 'inline' is used, then the duplicate code is generated > by the compiler. > > Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com> > Acked-by: Qi Zhang <qi.z.zhang@intel.com> > > drivers/net/iavf/iavf_rxtx.c | 33 +++++++++++++-------- > drivers/net/iavf/iavf_rxtx.h | 2 ++ > drivers/net/iavf/iavf_rxtx_vec_avx2.c | 54 +++++++++++++++++++++++++---------- > 3 files changed, 62 insertions(+), 27 deletions(-) Notte that I was able to workaround it by forcing the old logic with: diff --git a/drivers/net/iavf/iavf_rxtx.c b/drivers/net/iavf/iavf_rxtx.c index f19aa14646..1537a5f19c 100644 --- a/drivers/net/iavf/iavf_rxtx.c +++ b/drivers/net/iavf/iavf_rxtx.c @@ -4003,6 +4003,8 @@ iavf_set_tx_function(struct rte_eth_dev *dev) use_avx512 = true; #endif + if (!use_sse) use_avx2 = false; + if (!use_sse && !use_avx2 && !use_avx512) goto normal; ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: iavf: rte_eth_stats_get() fails upon upgrade to 23.07.0 2024-02-27 19:24 ` Isaac Boukris @ 2024-12-11 20:51 ` Isaac Boukris 0 siblings, 0 replies; 4+ messages in thread From: Isaac Boukris @ 2024-12-11 20:51 UTC (permalink / raw) To: users, jingjing.wu, beilei.xing, wenzhuo.lu, qi.z.zhang On Tue, Feb 27, 2024 at 9:24 PM Isaac Boukris <iboukris@gmail.com> wrote: > > On Tue, Feb 27, 2024 at 4:28 PM Isaac Boukris <iboukris@gmail.com> wrote: > > > > On Tue, Feb 27, 2024 at 1:27 PM Isaac Boukris <iboukris@gmail.com> wrote: > > > > > > Hello, > > > > > > This works fine with 23.03.0 but starting from 23.07.0 up to master it > > > fails as follows. > > > > > > Initialization is ok: > > > EAL: Probe PCI driver: net_iavf (8086:154c) device: 0000:09:00.0 (socket -1) > > > iavf_set_rx_function(): request RXDID[1] in Queue[0] is legacy, set > > > rx_pkt_burst as legacy for all queues > > > > > > telemetry.py /ethdev/link_status,0 | jq > > > { > > > "/ethdev/link_status": { > > > "status": "UP", > > > "speed": 40000, > > > "duplex": "full-duplex" > > > } > > > } > > > > > > But the following command hang and fail: > > > telemetry.py /ethdev/stats,0 | jq > > > telemetry.py /ethdev/xstats,0 | jq > > > > > > On the logs I see: > > > iavf_execute_vf_cmd(): No response for cmd 15 > > > iavf_query_stats(): fail to execute command OP_GET_STATS > > > iavf_dev_stats_get(): Get statistics failed > > > > I did some git bisect and found the commit below, help appreciated! > > > > 5712bf9d6e14d0eaa7a07814d59351ffeb8e02ed is the first bad commit > > commit 5712bf9d6e14d0eaa7a07814d59351ffeb8e02ed > > Author: Wenzhuo Lu <wenzhuo.lu@intel.com> > > Date: Tue Apr 18 13:11:05 2023 +0800 > > > > net/iavf: add Tx AVX2 offload path > > > > Add a specific path for TX AVX2. > > In this path, support the HW offload features, like, > > checksum insertion, VLAN insertion. > > This path is chosen automatically according to the > > configuration. > > > > 'inline' is used, then the duplicate code is generated > > by the compiler. > > > > Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com> > > Acked-by: Qi Zhang <qi.z.zhang@intel.com> > > > > drivers/net/iavf/iavf_rxtx.c | 33 +++++++++++++-------- > > drivers/net/iavf/iavf_rxtx.h | 2 ++ > > drivers/net/iavf/iavf_rxtx_vec_avx2.c | 54 +++++++++++++++++++++++++---------- > > 3 files changed, 62 insertions(+), 27 deletions(-) > > Notte that I was able to workaround it by forcing the old logic with: > > diff --git a/drivers/net/iavf/iavf_rxtx.c b/drivers/net/iavf/iavf_rxtx.c > index f19aa14646..1537a5f19c 100644 > --- a/drivers/net/iavf/iavf_rxtx.c > +++ b/drivers/net/iavf/iavf_rxtx.c > @@ -4003,6 +4003,8 @@ iavf_set_tx_function(struct rte_eth_dev *dev) > use_avx512 = true; > #endif > > + if (!use_sse) use_avx2 = false; > + > if (!use_sse && !use_avx2 && !use_avx512) > goto normal; FYI, I was able to fix this and drop my patch by upgrading the firmware on the host machine. From: kernel: i40e 0000:37:00.0: fw 8.5.67516 api 1.15 nvm 8.50 0x8000b6d7 1.3082.0 [8086:1583] [8086:0002] To: kernel: i40e 0000:37:00.0: fw 9.150.77492 api 1.15 nvm 9.50 0x8000f146 1.3597.0 [8086:1583] [8086:0002] Perhaps we should have a compatibility matrix on the iavf doc page, like the one we have on the i40e PF one. HTH ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-12-11 20:52 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-02-27 11:27 iavf: rte_eth_stats_get() fails upon upgrade to 23.07.0 Isaac Boukris 2024-02-27 14:28 ` Isaac Boukris 2024-02-27 19:24 ` Isaac Boukris 2024-12-11 20:51 ` Isaac Boukris
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).