[dpdk-dev] [PATCH v3 1/4] app/eventdev: add event timer adapter as a producer

Jerin Jacob jerin.jacob at caviumnetworks.com
Fri Apr 6 13:18:31 CEST 2018


-----Original Message-----
> Date: Thu,  5 Apr 2018 17:23:26 +0530
> From: Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> To: jerin.jacob at caviumnetworks.com, santosh.shukla at caviumnetworks.com,
>  erik.g.carrillo at intel.com
> Cc: dev at dpdk.org, Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> Subject: [dpdk-dev] [PATCH v3 1/4] app/eventdev: add event timer adapter as
>  a producer
> X-Mailer: git-send-email 2.16.3
> 
> Add event timer adapter as producer option that can be selected by
> passing --prod_type_timerdev.
> 
> Signed-off-by: Pavan Nikhilesh <pbhagavatula at caviumnetworks.com>
> +static inline int
> +perf_event_timer_producer(void *arg)
> +{
> +	struct prod_data *p  = arg;
> +	struct test_perf *t = p->t;
> +	struct evt_options *opt = t->opt;
> +	uint32_t flow_counter = 0;
> +	uint64_t count = 0;
> +	uint64_t arm_latency = 0;
> +	const uint8_t nb_timer_adptrs = opt->nb_timer_adptrs;
> +	const uint32_t nb_flows = t->nb_flows;
> +	const uint64_t nb_timers = opt->nb_timers;
> +	struct rte_mempool *pool = t->pool;
> +	struct perf_elt *m = NULL;

NULL assignment is not required.

> +	struct rte_event_timer_adapter **adptr = t->timer_adptr;
> +	uint64_t timeout_ticks = opt->optm_bkt_tck_nsec ?
> +			(opt->nb_bkt_tcks * opt->bkt_tck_nsec)
> +			/ opt->optm_bkt_tck_nsec : opt->nb_bkt_tcks;
> +
>  struct perf_elt {
> +	struct rte_event_timer tim;

This will make perf_elf two Cacheline, use union + offset of scheme to
fit timestamp on the first cacheline.

>  	uint64_t timestamp;
>  } __rte_cache_aligned;

With above changes:
Acked-by: Jerin Jacob <jerin.jacob at caviumnetworks.com>



More information about the dev mailing list