X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=app%2Ftest%2Ftest_link_bonding.c;h=32296604d23d363f71e9010b30a37a32ffb76e8f;hb=dd0eedb1cfcf0cb7423d859177c5bc6f931eaf8a;hp=674d8ddb375f216ff7e4fcb2d47f0a8ee7c254fc;hpb=ea0c20ea95fd5d71a10757e6598ac66233ea1495;p=dpdk.git diff --git a/app/test/test_link_bonding.c b/app/test/test_link_bonding.c index 674d8ddb37..32296604d2 100644 --- a/app/test/test_link_bonding.c +++ b/app/test/test_link_bonding.c @@ -75,17 +75,15 @@ ETH_TXQ_FLAGS_NOXSUMSCTP | ETH_TXQ_FLAGS_NOXSUMUDP | \ ETH_TXQ_FLAGS_NOXSUMTCP) -#define MBUF_DATA_SIZE (2048 + RTE_PKTMBUF_HEADROOM) #define MBUF_CACHE_SIZE (250) #define BURST_SIZE (32) -#define DEFAULT_MBUF_DATA_SIZE (2048) #define RTE_TEST_RX_DESC_MAX (2048) #define RTE_TEST_TX_DESC_MAX (2048) #define MAX_PKT_BURST (512) #define DEF_PKT_BURST (16) -#define BONDED_DEV_NAME ("unit_test_bonded_device") +#define BONDED_DEV_NAME ("unit_test_bond_dev") #define INVALID_SOCKET_ID (-1) #define INVALID_PORT_ID (-1) @@ -280,8 +278,8 @@ test_setup(void) RTE_TEST_TX_DESC_MAX + MAX_PKT_BURST; if (test_params->mbuf_pool == NULL) { test_params->mbuf_pool = rte_pktmbuf_pool_create("MBUF_POOL", - nb_mbuf_per_pool, MBUF_CACHE_SIZE, 0, MBUF_DATA_SIZE, - rte_socket_id()); + nb_mbuf_per_pool, MBUF_CACHE_SIZE, 0, + RTE_MBUF_DEFAULT_BUF_SIZE, rte_socket_id()); TEST_ASSERT_NOT_NULL(test_params->mbuf_pool, "rte_mempool_create failed"); } @@ -4022,16 +4020,14 @@ test_close_bonded_device(void) return 0; } -static int +static void testsuite_teardown(void) { - if (test_params->pkt_eth_hdr != NULL) { - free(test_params->pkt_eth_hdr); - test_params->pkt_eth_hdr = NULL; - } + free(test_params->pkt_eth_hdr); + test_params->pkt_eth_hdr = NULL; /* Clean up and remove slaves from bonded device */ - return remove_slaves_and_stop_bonded_device(); + remove_slaves_and_stop_bonded_device(); } static void @@ -4060,7 +4056,6 @@ test_tlb_tx_burst(void) struct rte_eth_stats port_stats[32]; uint64_t sum_ports_opackets = 0, all_bond_opackets = 0, all_bond_obytes = 0; uint16_t pktlen; - uint64_t floor_obytes = 0, ceiling_obytes = 0; TEST_ASSERT_SUCCESS(initialize_bonded_device_with_slaves (BONDING_MODE_TLB, 1, 3, 1), @@ -4072,7 +4067,7 @@ test_tlb_tx_burst(void) "Burst size specified is greater than supported.\n"); - /* Generate 400000 test bursts in 2s of packets to transmit */ + /* Generate bursts of packets */ for (i = 0; i < 400000; i++) { /*test two types of mac src own(bonding) and others */ if (i % 2 == 0) { @@ -4125,15 +4120,14 @@ test_tlb_tx_burst(void) TEST_ASSERT_EQUAL(sum_ports_opackets, (uint64_t)all_bond_opackets, "Total packets sent by slaves is not equal to packets sent by bond interface"); - /* distribution of packets on each slave within +/- 10% of the expected value. */ - for (i = 0; i < test_params->bonded_slave_count; i++) { - floor_obytes = (all_bond_obytes*90)/(test_params->bonded_slave_count*100); - ceiling_obytes = (all_bond_obytes*110)/(test_params->bonded_slave_count*100); - TEST_ASSERT(port_stats[i].obytes >= floor_obytes && - port_stats[i].obytes <= ceiling_obytes, - "Distribution is not even"); + /* checking if distribution of packets is balanced over slaves */ + for (i = 0; i < test_params->bonded_slave_count; i++) { + TEST_ASSERT(port_stats[i].obytes > 0 && + port_stats[i].obytes < all_bond_obytes, + "Packets are not balanced over slaves"); } + /* Put all slaves down and try and transmit */ for (i = 0; i < test_params->bonded_slave_count; i++) { virtual_ethdev_simulate_link_status_interrupt( @@ -4997,7 +4991,7 @@ static struct unit_test_suite link_bonding_test_suite = { TEST_CASE(test_reconfigure_bonded_device), TEST_CASE(test_close_bonded_device), - { NULL, NULL, NULL, NULL, NULL } /**< NULL terminate unit test array */ + TEST_CASES_END() /**< NULL terminate unit test array */ } }; @@ -5008,8 +5002,4 @@ test_link_bonding(void) return unit_test_suite_runner(&link_bonding_test_suite); } -static struct test_command link_bonding_cmd = { - .command = "link_bonding_autotest", - .callback = test_link_bonding, -}; -REGISTER_TEST_COMMAND(link_bonding_cmd); +REGISTER_TEST_COMMAND(link_bonding_autotest, test_link_bonding);