test/ring: fix number of single element enqueue/dequeue
authorFeifei Wang <feifei.wang2@arm.com>
Sun, 20 Sep 2020 11:48:51 +0000 (06:48 -0500)
committerDavid Marchand <david.marchand@redhat.com>
Wed, 23 Sep 2020 06:53:33 +0000 (08:53 +0200)
The ring capacity is (RING_SIZE - 1), thus only (RING_SIZE - 1) number of
elements can be enqueued into the ring.

Fixes: af75078fece3 ("first public release")
Cc: stable@dpdk.org
Signed-off-by: Feifei Wang <feifei.wang2@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
app/test/test_ring.c

index 0ae97d3..04bdc9b 100644 (file)
@@ -811,7 +811,7 @@ test_ring_basic_ex(void)
                printf("%u ring entries are now free\n",
                        rte_ring_free_count(rp));
 
-               for (j = 0; j < RING_SIZE; j++) {
+               for (j = 0; j < RING_SIZE - 1; j++) {
                        test_ring_enqueue(rp, obj, esize[i], 1,
                                TEST_RING_THREAD_DEF | TEST_RING_ELEM_SINGLE);
                }
@@ -822,7 +822,7 @@ test_ring_basic_ex(void)
                        goto fail_test;
                }
 
-               for (j = 0; j < RING_SIZE; j++) {
+               for (j = 0; j < RING_SIZE - 1; j++) {
                        test_ring_dequeue(rp, obj, esize[i], 1,
                                TEST_RING_THREAD_DEF | TEST_RING_ELEM_SINGLE);
                }