aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2016-02-23 17:25:55 +0200
committerMaxim Uvarov <maxim.uvarov@linaro.org>2016-03-04 13:24:48 +0300
commitf6bf054479437b56e55d99172f37d2b22248befc (patch)
tree66baadce4822d6934204517a2ee6013260b9db6f /test
parent9bc7c7f1e81352d5d75e5f5fef253231422af809 (diff)
validation: pktio: set packet mac addresses and checksum in statistics test
Set test packets' mac addresses and checksums in pktio_test_statistics_counters() to enable testing with real world interfaces. Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com> Signed-off-by: Matias Elo <matias.elo@nokia.com> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'test')
-rw-r--r--test/validation/pktio/pktio.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/test/validation/pktio/pktio.c b/test/validation/pktio/pktio.c
index 08bbee320..fc5018db0 100644
--- a/test/validation/pktio/pktio.c
+++ b/test/validation/pktio/pktio.c
@@ -1079,6 +1079,7 @@ int pktio_check_statistics_counters(void)
void pktio_test_statistics_counters(void)
{
+ odp_pktio_t pktio_rx, pktio_tx;
odp_pktio_t pktio[MAX_NUM_IFACES];
odp_packet_t pkt;
odp_packet_t tx_pkt[1000];
@@ -1094,13 +1095,15 @@ void pktio_test_statistics_counters(void)
CU_ASSERT_FATAL(pktio[i] != ODP_PKTIO_INVALID);
}
+ pktio_tx = pktio[0];
+ pktio_rx = (num_ifaces > 1) ? pktio[1] : pktio_tx;
- CU_ASSERT(odp_pktout_queue(pktio[0], &pktout, 1) == 1);
+ CU_ASSERT(odp_pktout_queue(pktio_tx, &pktout, 1) == 1);
- ret = odp_pktio_start(pktio[0]);
+ ret = odp_pktio_start(pktio_tx);
CU_ASSERT(ret == 0);
if (num_ifaces > 1) {
- ret = odp_pktio_start(pktio[1]);
+ ret = odp_pktio_start(pktio_rx);
CU_ASSERT(ret == 0);
}
@@ -1117,13 +1120,18 @@ void pktio_test_statistics_counters(void)
if (pkt == ODP_PACKET_INVALID)
break;
pktio_init_packet(pkt);
+ pktio_pkt_set_macs(pkt, pktio_tx, pktio_rx);
+ if (pktio_fixup_checksums(pkt) != 0) {
+ odp_packet_free(pkt);
+ break;
+ }
tx_pkt[alloc] = pkt;
}
- ret = odp_pktio_stats_reset(pktio[0]);
+ ret = odp_pktio_stats_reset(pktio_tx);
CU_ASSERT(ret == 0);
if (num_ifaces > 1) {
- ret = odp_pktio_stats_reset(pktio[1]);
+ ret = odp_pktio_stats_reset(pktio_rx);
CU_ASSERT(ret == 0);
}
@@ -1150,11 +1158,11 @@ void pktio_test_statistics_counters(void)
}
}
- ret = odp_pktio_stats(pktio[0], &stats[0]);
+ ret = odp_pktio_stats(pktio_tx, &stats[0]);
CU_ASSERT(ret == 0);
if (num_ifaces > 1) {
- ret = odp_pktio_stats(pktio[1], &stats[1]);
+ ret = odp_pktio_stats(pktio_rx, &stats[1]);
CU_ASSERT(ret == 0);
CU_ASSERT((stats[1].in_ucast_pkts == 0) ||
(stats[1].in_ucast_pkts >= (uint64_t)pkts));