Hi Kevin! Thank you for the notification about backporting. Please merge this patch into the stable release. If it is possible, it will be nice to add to the stable release this commit too https://git.dpdk.org/dpdk/commit/?id=f7dabff91738e97d81f6844cb6c00b503de3d9ea Thanks. Serhii ________________________________ From: Kevin Traynor Sent: 18 July 2025 22:29 To: Danylo Vodopianov Cc: dpdk stable Subject: patch 'net/ntnic: fix ring queue operation' has been queued to stable release 24.11.3 Hi, FYI, your patch has been queued to stable release 24.11.3 Note it hasn't been pushed to https://linkprotect.cudasvc.com/url?a=http%3a%2f%2fdpdk.org%2fbrowse%2fdpdk-stable&c=E,1,0s7L2Nnz1oz870ovFl1dBxRYTbF4gRBnobLRLJC0w0_Z9daayABQIVE41tCC7fZ4pmazXnCn0NtNQMiOCcI8jiLTP_hmlko2qP0og6HJkWmK&typo=1 yet. It will be pushed if I get no objections before 07/23/25. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/cd05b2212e2d228d5ed206edf2bd35d6c2c2bdc8 Thanks. Kevin --- From cd05b2212e2d228d5ed206edf2bd35d6c2c2bdc8 Mon Sep 17 00:00:00 2001 From: Danylo Vodopianov Date: Mon, 5 May 2025 09:13:06 +0200 Subject: [PATCH] net/ntnic: fix ring queue operation [ upstream commit 13b59c07d6827e3cd7f746997b97fcffb5992435 ] User should call rte_ring_dequeue_zc_elem_finish to complete the dequeue operation. However this complete step if record absent. This change rework queue read operation. Fixes: 96c8249be53e ("net/ntnic: learn flow queue handling") Signed-off-by: Danylo Vodopianov --- .../profile_inline/flow_api_profile_inline.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.c b/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.c index ff8eb502f4..5325657551 100644 --- a/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.c +++ b/drivers/net/ntnic/nthw/flow_api/profile_inline/flow_api_profile_inline.c @@ -404,16 +404,12 @@ static uint32_t flm_lrn_update(struct flow_eth_dev *dev, uint32_t *inf_word_cnt, { read_record r = flm_lrn_queue_get_read_buffer(flm_lrn_queue_arr); + uint32_t handled_records = 0; if (r.num) { - uint32_t handled_records = 0; - - if (hw_mod_flm_lrn_data_set_flush(&dev->ndev->be, HW_FLM_FLOW_LRN_DATA, r.p, r.num, - &handled_records, inf_word_cnt, sta_word_cnt)) { + if (hw_mod_flm_lrn_data_set_flush(&dev->ndev->be, HW_FLM_FLOW_LRN_DATA, r.p, + r.num, &handled_records, inf_word_cnt, sta_word_cnt)) NT_LOG(ERR, FILTER, "Flow programming failed"); - - } else if (handled_records > 0) { - flm_lrn_queue_release_read_buffer(flm_lrn_queue_arr, handled_records); - } } + flm_lrn_queue_release_read_buffer(flm_lrn_queue_arr, handled_records); return r.num; -- 2.50.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-07-18 20:29:13.192578837 +0100 +++ 0061-net-ntnic-fix-ring-queue-operation.patch 2025-07-18 20:29:10.959907420 +0100 @@ -1 +1 @@ -From 13b59c07d6827e3cd7f746997b97fcffb5992435 Mon Sep 17 00:00:00 2001 +From cd05b2212e2d228d5ed206edf2bd35d6c2c2bdc8 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 13b59c07d6827e3cd7f746997b97fcffb5992435 ] + @@ -12 +13,0 @@ -Cc: stable@dpdk.org @@ -20 +21 @@ -index cb6a66a061..f78c6fbf49 100644 +index ff8eb502f4..5325657551 100644 @@ -23 +24 @@ -@@ -399,16 +399,12 @@ static uint32_t flm_lrn_update(struct flow_eth_dev *dev, uint32_t *inf_word_cnt, +@@ -404,16 +404,12 @@ static uint32_t flm_lrn_update(struct flow_eth_dev *dev, uint32_t *inf_word_cnt,