From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 73FABA046B for ; Tue, 23 Jul 2019 03:03:16 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 16B751BFB3; Tue, 23 Jul 2019 03:03:16 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 7ACDE1BF8B for ; Tue, 23 Jul 2019 03:03:14 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE2 (envelope-from yskoh@mellanox.com) with ESMTPS (AES256-SHA encrypted); 23 Jul 2019 04:03:13 +0300 Received: from scfae-sc-2.mti.labs.mlnx (scfae-sc-2.mti.labs.mlnx [10.101.0.96]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id x6N11Hfo026580; Tue, 23 Jul 2019 04:03:12 +0300 From: Yongseok Koh To: Harry van Haaren Cc: dpdk stable Date: Mon, 22 Jul 2019 18:00:31 -0700 Message-Id: <20190723010115.6446-64-yskoh@mellanox.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190723010115.6446-1-yskoh@mellanox.com> References: <20190723010115.6446-1-yskoh@mellanox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'event/sw: fix enqueue checks in self-test' has been queued to LTS release 17.11.7 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 17.11.7 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objection by 07/27/19. So please shout if anyone has objection. 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. Thanks. Yongseok --- >From ebc26b27da610bd244a1ec34dcabddc67bab7774 Mon Sep 17 00:00:00 2001 From: Harry van Haaren Date: Wed, 27 Mar 2019 18:45:46 +0000 Subject: [PATCH] event/sw: fix enqueue checks in self-test [ upstream commit 1b03e2929114d4ebfc7a2159d0d45f0a3e9a7ba6 ] This patch fixes a number of instances of the same return value mis-check, where previously we checked for a negative return value as error, however the API returns an unsigned integer, so these return value checks are invalid. The rte_event_enqueue_burst() API returns the number of events enqueued, so in order to identify the error case, we must check for != the number of intended enqueues. Fixes: cd1a9e3eab55 ("test/eventdev: add SW tests for load balancing") Signed-off-by: Harry van Haaren --- test/test/test_eventdev_sw.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/test/test/test_eventdev_sw.c b/test/test/test_eventdev_sw.c index f524b6f81a..bc56048613 100644 --- a/test/test/test_eventdev_sw.c +++ b/test/test/test_eventdev_sw.c @@ -412,7 +412,7 @@ run_prio_packet_test(struct test *t) .mbuf = arp }; err = rte_event_enqueue_burst(evdev, t->port[0], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: error failed to enqueue\n", __LINE__); return -1; } @@ -504,7 +504,7 @@ test_single_directed_packet(struct test *t) /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, rx_enq, &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: error failed to enqueue\n", __LINE__); return -1; } @@ -573,7 +573,7 @@ test_directed_forward_credits(struct test *t) for (i = 0; i < 1000; i++) { err = rte_event_enqueue_burst(evdev, 0, &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: error failed to enqueue\n", __LINE__); return -1; } @@ -734,7 +734,7 @@ burst_packets(struct test *t) }; /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, t->port[rx_port], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -822,7 +822,7 @@ abuse_inflights(struct test *t) /* Enqueue op only */ err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &release_ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -1985,7 +1985,7 @@ load_balancing(struct test *t) }; /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -2084,7 +2084,7 @@ load_balancing_history(struct test *t) } arp->hash.rss = flows1[i]; err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -2134,7 +2134,7 @@ load_balancing_history(struct test *t) arp->hash.rss = flows2[i]; err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -2244,7 +2244,7 @@ invalid_qid(struct test *t) }; /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -2331,7 +2331,7 @@ single_packet(struct test *t) arp->seqn = MAGIC_SEQN; err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } @@ -2375,7 +2375,7 @@ single_packet(struct test *t) rte_pktmbuf_free(ev.mbuf); err = rte_event_enqueue_burst(evdev, t->port[wrk_enq], &release_ev, 1); - if (err < 0) { + if (err != 1) { printf("%d: Failed to enqueue\n", __LINE__); return -1; } -- 2.21.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2019-07-22 17:55:09.924454337 -0700 +++ 0064-event-sw-fix-enqueue-checks-in-self-test.patch 2019-07-22 17:55:06.197473000 -0700 @@ -1,8 +1,10 @@ -From 1b03e2929114d4ebfc7a2159d0d45f0a3e9a7ba6 Mon Sep 17 00:00:00 2001 +From ebc26b27da610bd244a1ec34dcabddc67bab7774 Mon Sep 17 00:00:00 2001 From: Harry van Haaren Date: Wed, 27 Mar 2019 18:45:46 +0000 Subject: [PATCH] event/sw: fix enqueue checks in self-test +[ upstream commit 1b03e2929114d4ebfc7a2159d0d45f0a3e9a7ba6 ] + This patch fixes a number of instances of the same return value mis-check, where previously we checked for a negative return value as error, however the API returns an unsigned @@ -13,18 +15,17 @@ we must check for != the number of intended enqueues. Fixes: cd1a9e3eab55 ("test/eventdev: add SW tests for load balancing") -Cc: stable@dpdk.org Signed-off-by: Harry van Haaren --- - drivers/event/sw/sw_evdev_selftest.c | 22 +++++++++++----------- + test/test/test_eventdev_sw.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) -diff --git a/drivers/event/sw/sw_evdev_selftest.c b/drivers/event/sw/sw_evdev_selftest.c -index d00d5de613..38c21fa0fa 100644 ---- a/drivers/event/sw/sw_evdev_selftest.c -+++ b/drivers/event/sw/sw_evdev_selftest.c -@@ -385,7 +385,7 @@ run_prio_packet_test(struct test *t) +diff --git a/test/test/test_eventdev_sw.c b/test/test/test_eventdev_sw.c +index f524b6f81a..bc56048613 100644 +--- a/test/test/test_eventdev_sw.c ++++ b/test/test/test_eventdev_sw.c +@@ -412,7 +412,7 @@ run_prio_packet_test(struct test *t) .mbuf = arp }; err = rte_event_enqueue_burst(evdev, t->port[0], &ev, 1); @@ -33,7 +34,7 @@ printf("%d: error failed to enqueue\n", __LINE__); return -1; } -@@ -477,7 +477,7 @@ test_single_directed_packet(struct test *t) +@@ -504,7 +504,7 @@ test_single_directed_packet(struct test *t) /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, rx_enq, &ev, 1); @@ -42,7 +43,7 @@ printf("%d: error failed to enqueue\n", __LINE__); return -1; } -@@ -546,7 +546,7 @@ test_directed_forward_credits(struct test *t) +@@ -573,7 +573,7 @@ test_directed_forward_credits(struct test *t) for (i = 0; i < 1000; i++) { err = rte_event_enqueue_burst(evdev, 0, &ev, 1); @@ -51,7 +52,7 @@ printf("%d: error failed to enqueue\n", __LINE__); return -1; } -@@ -707,7 +707,7 @@ burst_packets(struct test *t) +@@ -734,7 +734,7 @@ burst_packets(struct test *t) }; /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, t->port[rx_port], &ev, 1); @@ -60,7 +61,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -795,7 +795,7 @@ abuse_inflights(struct test *t) +@@ -822,7 +822,7 @@ abuse_inflights(struct test *t) /* Enqueue op only */ err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &release_ev, 1); @@ -69,7 +70,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -2026,7 +2026,7 @@ load_balancing(struct test *t) +@@ -1985,7 +1985,7 @@ load_balancing(struct test *t) }; /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); @@ -78,7 +79,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -2125,7 +2125,7 @@ load_balancing_history(struct test *t) +@@ -2084,7 +2084,7 @@ load_balancing_history(struct test *t) } arp->hash.rss = flows1[i]; err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); @@ -87,7 +88,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -2175,7 +2175,7 @@ load_balancing_history(struct test *t) +@@ -2134,7 +2134,7 @@ load_balancing_history(struct test *t) arp->hash.rss = flows2[i]; err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); @@ -96,7 +97,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -2285,7 +2285,7 @@ invalid_qid(struct test *t) +@@ -2244,7 +2244,7 @@ invalid_qid(struct test *t) }; /* generate pkt and enqueue */ err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); @@ -105,7 +106,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -2372,7 +2372,7 @@ single_packet(struct test *t) +@@ -2331,7 +2331,7 @@ single_packet(struct test *t) arp->seqn = MAGIC_SEQN; err = rte_event_enqueue_burst(evdev, t->port[rx_enq], &ev, 1); @@ -114,7 +115,7 @@ printf("%d: Failed to enqueue\n", __LINE__); return -1; } -@@ -2416,7 +2416,7 @@ single_packet(struct test *t) +@@ -2375,7 +2375,7 @@ single_packet(struct test *t) rte_pktmbuf_free(ev.mbuf); err = rte_event_enqueue_burst(evdev, t->port[wrk_enq], &release_ev, 1);