diff options
author | Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> | 2015-08-06 16:00:16 +0300 |
---|---|---|
committer | Maxim Uvarov <maxim.uvarov@linaro.org> | 2015-08-07 15:04:47 +0300 |
commit | 01f5c738c6e73bd3ad75984d293c506f952a1eff (patch) | |
tree | 1542e649b3a400bb13f4dc18ced447145f87035e /test/performance | |
parent | bb00e77670ac298d81c75e0cb21a3d89e09b59d8 (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.c | 12 |
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"); |