[dpdk-stable] patch 'event/sw: fix enqueue checks in self-test' has been queued to LTS release 17.11.7

Yongseok Koh yskoh at mellanox.com
Tue Jul 23 03:00:31 CEST 2019


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 <harry.van.haaren at intel.com>
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 <harry.van.haaren at intel.com>
---
 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 <harry.van.haaren at intel.com>
 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 at dpdk.org
 
 Signed-off-by: Harry van Haaren <harry.van.haaren at intel.com>
 ---
- 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);


More information about the stable mailing list