On Tue, 2017-01-24 at 00:31 -0800, Naoki Iwakami wrote:
I am using SPDK application framework (spdk_app_init() and so on),
and struggling with figuring out the way to insert DPDK timer sub-
system in the framework.
According to the DPDK documentation, you have to call function
rte_timer_manage() periodically in lcores main_loop() in order to
make the timer sub-system functioning properly.
Could anyone advice where where I can find the lcore main loop in the
SPDK app framework, and what is the recommended way to insert the
The SPDK app framework spawns one thread per core for each core in the
core mask provided in the initialization options (called reactor_mask).
Each thread then sits in a tight loop polling queues for incoming
events and executing pollers. The implementation is in
Our app framework implements its own timers, so you don't need to use
the DPDK timers. You can just call
* \brief Register a poller on the given lcore.
void spdk_poller_register(struct spdk_poller **ppoller,
and pass it a non-zero period.
If you really do need to use a DPDK timer, just register a poller using
the above function with a period of 0 and inside the spdk_poller_fn you
provide, call rte_timer_manage.
SPDK mailing list