[dpdk-dev] [PATCH] app/eventdev: use proper teardown sequence
Jerin Jacob
jerin.jacob at caviumnetworks.com
Wed Jul 18 19:36:15 CEST 2018
-----Original Message-----
> Date: Tue, 17 Jul 2018 20:03:07 +0530
> From: Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> To: jerin.jacob at caviumnetworks.com, santosh.shukla at caviumnetworks.com
> Cc: dev at dpdk.org, Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> Subject: [dpdk-dev] [PATCH] app/eventdev: use proper teardown sequence
> X-Mailer: git-send-email 2.18.0
>
> Use proper teardown sequence when SIGINT is caught to prevent
> eventdev from going into undefined state.
>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> ---
> app/test-eventdev/evt_main.c | 6 +++++-
> app/test-eventdev/test_pipeline_common.c | 1 -
> 2 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/app/test-eventdev/evt_main.c b/app/test-eventdev/evt_main.c
> index 57bb94570..bc25fb386 100644
> --- a/app/test-eventdev/evt_main.c
> +++ b/app/test-eventdev/evt_main.c
> @@ -25,8 +25,12 @@ signal_handler(int signum)
> signum);
> /* request all lcores to exit from the main loop */
> *(int *)test->test_priv = true;
> - rte_wmb();
>
> + if (test->ops.ethdev_destroy)
> + test->ops.ethdev_destroy(test, &opt);
I think, stopping the producer should be enough to have proper tear down
sequence, as, When producer stops, the dequeue eventually will not have the
events and it will exit properly.
> +
> + rte_event_dev_stop(opt.dev_id);
> + rte_wmb();
> rte_eal_mp_wait_lcore();
>
> if (test->ops.test_result)
> diff --git a/app/test-eventdev/test_pipeline_common.c b/app/test-eventdev/test_pipeline_common.c
> index 719518ff3..70fd04517 100644
> --- a/app/test-eventdev/test_pipeline_common.c
> +++ b/app/test-eventdev/test_pipeline_common.c
> @@ -476,7 +476,6 @@ pipeline_eventdev_destroy(struct evt_test *test, struct evt_options *opt)
> {
> RTE_SET_USED(test);
>
> - rte_event_dev_stop(opt->dev_id);
> rte_event_dev_close(opt->dev_id);
> }
>
> --
> 2.18.0
>
More information about the dev
mailing list