From: Pavan Nikhilesh Date: Thu, 2 Apr 2020 19:38:07 +0000 (+0530) Subject: app/eventdev: validate producer type X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=9fdc9986cfd62c814cef1f529d6d21e8bd590221;p=dpdk.git app/eventdev: validate producer type Validate the producer type used for pipeline and order test suites. Signed-off-by: Pavan Nikhilesh --- diff --git a/app/test-eventdev/evt_options.h b/app/test-eventdev/evt_options.h index cb1d3760d4..748e54fae9 100644 --- a/app/test-eventdev/evt_options.h +++ b/app/test-eventdev/evt_options.h @@ -232,6 +232,22 @@ evt_dump_sched_type_list(struct evt_options *opt) evt_dump_end; } +static inline const char * +evt_prod_id_to_name(enum evt_prod_type prod_type) +{ + switch (prod_type) { + default: + case EVT_PROD_TYPE_SYNT: + return "Synthetic producer lcores"; + case EVT_PROD_TYPE_ETH_RX_ADPTR: + return "Ethdev Rx Adapter"; + case EVT_PROD_TYPE_EVENT_TIMER_ADPTR: + return "Event timer adapter"; + } + + return ""; +} + #define EVT_PROD_MAX_NAME_LEN 50 static inline void evt_dump_producer_type(struct evt_options *opt) diff --git a/app/test-eventdev/test_order_common.c b/app/test-eventdev/test_order_common.c index 252e4a14c7..4190f9ade8 100644 --- a/app/test-eventdev/test_order_common.c +++ b/app/test-eventdev/test_order_common.c @@ -68,8 +68,10 @@ int order_opt_check(struct evt_options *opt) { if (opt->prod_type != EVT_PROD_TYPE_SYNT) { - evt_err("Invalid producer type"); - return -EINVAL; + evt_err("Invalid producer type '%s' valid producer '%s'", + evt_prod_id_to_name(opt->prod_type), + evt_prod_id_to_name(EVT_PROD_TYPE_SYNT)); + return -1; } /* 1 producer + N workers + 1 master */ diff --git a/app/test-eventdev/test_pipeline_common.c b/app/test-eventdev/test_pipeline_common.c index fa91bf2290..84c42b33ce 100644 --- a/app/test-eventdev/test_pipeline_common.c +++ b/app/test-eventdev/test_pipeline_common.c @@ -111,6 +111,13 @@ pipeline_opt_check(struct evt_options *opt, uint64_t nb_queues) */ lcores = 2; + if (opt->prod_type != EVT_PROD_TYPE_ETH_RX_ADPTR) { + evt_err("Invalid producer type '%s' valid producer '%s'", + evt_prod_id_to_name(opt->prod_type), + evt_prod_id_to_name(EVT_PROD_TYPE_ETH_RX_ADPTR)); + return -1; + } + if (!rte_eth_dev_count_avail()) { evt_err("test needs minimum 1 ethernet dev"); return -1;