On Mon, 16 Mar 2015 20:21:39 +0000 "Dumitrescu, Cristian" <cristian.dumitrescu at intel.com> wrote:
> When stats read is decoupled from stats clear, the exchange operation cannot > fix this. > > To your point: when stats are cleared on read, would it make sense to use the > exchange operation? In my opinion, it does not make sense, as the rte_sched > API is not thread safe (for performance reasons), which is explicitly > stated. As clearly documented, the scheduler enqueue and dequeue operations > need to run on the same CPU core. Therefore, IMHO having a thread safe stats > read function while the main functional API is not thread safe is not going > to add value. Agreed but for a different reason. It is safe but not consistent to read statistics from another management thread. As long as no other thread is making changes to underlying configuration only the values might change while packets in flight. Making all the statistics fully atomic_t would be a performance killer.