aboutsummaryrefslogtreecommitdiff
path: root/test/performance
diff options
context:
space:
mode:
authorIvan Khoronzhuk <ivan.khoronzhuk@linaro.org>2015-08-06 16:00:16 +0300
committerMaxim Uvarov <maxim.uvarov@linaro.org>2015-08-07 15:04:47 +0300
commit01f5c738c6e73bd3ad75984d293c506f952a1eff (patch)
tree1542e649b3a400bb13f4dc18ced447145f87035e /test/performance
parentbb00e77670ac298d81c75e0cb21a3d89e09b59d8 (diff)
performance: odp_pktio_perf: use real MAC addresses while packet creation
It's needed as pktio is not set in promisc mode. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'test/performance')
-rw-r--r--test/performance/odp_pktio_perf.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/test/performance/odp_pktio_perf.c b/test/performance/odp_pktio_perf.c
index 08f13b628..fcbc4ec09 100644
--- a/test/performance/odp_pktio_perf.c
+++ b/test/performance/odp_pktio_perf.c
@@ -123,6 +123,8 @@ typedef struct {
odp_pktio_t pktio_rx;
pkt_rx_stats_t rx_stats[ODP_CONFIG_MAX_THREADS];
pkt_tx_stats_t tx_stats[ODP_CONFIG_MAX_THREADS];
+ uint8_t src_mac[ODPH_ETHADDR_LEN];
+ uint8_t dst_mac[ODPH_ETHADDR_LEN];
} test_globals_t;
/* Status of max rate search */
@@ -169,7 +171,6 @@ static odp_packet_t pktio_create_packet(void)
uint32_t offset;
pkt_head_t pkt_hdr;
size_t payload_len;
- uint8_t mac[ODPH_ETHADDR_LEN] = {0};
payload_len = sizeof(pkt_hdr) + gbl_args->args.pkt_len;
@@ -186,8 +187,8 @@ static odp_packet_t pktio_create_packet(void)
offset = 0;
odp_packet_l2_offset_set(pkt, offset);
eth = (odph_ethhdr_t *)buf;
- memcpy(eth->src.addr, mac, ODPH_ETHADDR_LEN);
- memcpy(eth->dst.addr, mac, ODPH_ETHADDR_LEN);
+ memcpy(eth->src.addr, gbl_args->src_mac, ODPH_ETHADDR_LEN);
+ memcpy(eth->dst.addr, gbl_args->dst_mac, ODPH_ETHADDR_LEN);
eth->type = odp_cpu_to_be_16(ODPH_ETHTYPE_IPV4);
/* IP */
@@ -731,6 +732,11 @@ static int test_init(void)
else
gbl_args->pktio_rx = gbl_args->pktio_tx;
+ odp_pktio_mac_addr(gbl_args->pktio_tx, gbl_args->src_mac,
+ ODPH_ETHADDR_LEN);
+ odp_pktio_mac_addr(gbl_args->pktio_rx, gbl_args->dst_mac,
+ ODPH_ETHADDR_LEN);
+
if (gbl_args->pktio_rx == ODP_PKTIO_INVALID ||
gbl_args->pktio_tx == ODP_PKTIO_INVALID) {
LOG_ERR("failed to open pktio\n");