From mboxrd@z Thu Jan 1 00:00:00 1970 From: Erik Gabriel Carrillo Subject: [PATCH 1/1] app/eventdev: detect deadlock for timer event producer Date: Thu, 29 Nov 2018 13:18:51 -0600 Message-ID: <1543519131-18910-1-git-send-email-erik.g.carrillo@intel.com> Cc: jerin.jacob@caviumnetworks.com, dev@dpdk.org To: pbhagavatula@caviumnetworks.com Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id BAD551B463 for ; Thu, 29 Nov 2018 20:18:42 +0100 (CET) List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" If timer events get dropped for some reason, the thread that launched producer and worker cores will never exit, because the deadlock check doesn't currently apply to the event timer adapter case. This commit fixes this. Signed-off-by: Erik Gabriel Carrillo --- app/test-eventdev/test_perf_common.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/test-eventdev/test_perf_common.c b/app/test-eventdev/test_perf_common.c index 8618775..f99a6a6 100644 --- a/app/test-eventdev/test_perf_common.c +++ b/app/test-eventdev/test_perf_common.c @@ -327,7 +327,8 @@ perf_launch_lcores(struct evt_test *test, struct evt_options *opt, } if (new_cycles - dead_lock_cycles > dead_lock_sample && - opt->prod_type == EVT_PROD_TYPE_SYNT) { + (opt->prod_type == EVT_PROD_TYPE_SYNT || + opt->prod_type == EVT_PROD_TYPE_EVENT_TIMER_ADPTR)) { remaining = t->outstand_pkts - processed_pkts(t); if (dead_lock_remaining == remaining) { rte_event_dev_dump(opt->dev_id, stdout); -- 2.6.4