The 12/03/2017 17:50, Jia He wrote: > To support C11 memory model barrier, 2 options are suggested by Jerin: > 1. use rte_smp_rmb > 2. use load_acquire/store_release(refer to [1]). > CONFIG_RTE_RING_USE_C11_MEM_MODEL is provided, and by default it is "y" > only on arm64 so far. > > The reason why providing 2 options is due to the performance benchmark > difference in different arm machines, refer to [2]. > > We haven't tested on ppc64. If anyone verifies it, he can add > CONFIG_RTE_RING_USE_C11_MEM_MODEL=y to ppc64 config files. > > [1] https://github.com/freebsd/freebsd/blob/master/sys/sys/buf_ring.h#L170 > [2] http://dpdk.org/ml/archives/dev/2017-October/080861.html > > Signed-off-by: Jia He <jia...@hxt-semitech.com> > Suggested-by: Jerin Jacob <jerin.ja...@caviumnetworks.com> > Acked-by: Jerin Jacob <jerin.ja...@caviumnetworks.com>
Acked-by: Jianbo Liu <jianbo....@arm.com> > --- > config/common_armv8a_linuxapp | 2 + > lib/librte_ring/Makefile | 3 +- > lib/librte_ring/rte_ring.h | 14 ++- > lib/librte_ring/rte_ring_c11_mem.h | 186 > +++++++++++++++++++++++++++++++++++++ > 4 files changed, 203 insertions(+), 2 deletions(-) > create mode 100644 lib/librte_ring/rte_ring_c11_mem.h > IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.