timer: fix stress test on multiple runs
authorRobert Sanford <rsanford2@gmail.com>
Wed, 25 Feb 2015 04:09:48 +0000 (23:09 -0500)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Wed, 25 Feb 2015 09:40:54 +0000 (10:40 +0100)
Fix timer stress test to succeed on multiple runs.

Signed-off-by: Robert Sanford <rsanford2@gmail.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
app/test/test_timer.c

index 4b4800b..070437a 100644 (file)
@@ -253,6 +253,7 @@ timer_stress2_main_loop(__attribute__((unused)) void *arg)
        unsigned lcore_id = rte_lcore_id();
 
        if (lcore_id == rte_get_master_lcore()) {
+               cb_count = 0;
                timers = rte_malloc(NULL, sizeof(*timers) * NB_STRESS2_TIMERS, 0);
                if (timers == NULL) {
                        printf("Test Failed\n");
@@ -311,6 +312,12 @@ timer_stress2_main_loop(__attribute__((unused)) void *arg)
        /* now check that we get the right number of callbacks */
        if (lcore_id == rte_get_master_lcore()) {
                rte_timer_manage();
+
+               /* clean up statics, in case we run again */
+               rte_free(timers);
+               timers = NULL;
+               ready = 0;
+
                if (cb_count != NB_STRESS2_TIMERS) {
                        printf("Test Failed\n");
                        printf("- Stress test 2, part 2 failed\n");