From: Thomas Monjalon Date: Fri, 26 Oct 2018 21:23:36 +0000 (+0200) Subject: kni: fix build on Linux < 3.14 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=c6c36fe28a7bfd8ca21784b2b8b62241f89de06e;hp=6e5765deb72b765a79b6560f644d0c6ed004a0dc;p=dpdk.git kni: fix build on Linux < 3.14 The atomic functions smp_load_acquire() and smp_store_release() were introduced in Linux 3.14. Older kernels miss the functions: kni_fifo.h:19:2: error: implicit declaration of function ‘smp_load_acquire’ kni_fifo.h:30:2: error: implicit declaration of function ‘smp_store_release’ The fallback is to drop the atomic barrier, as it was before the commit below. Fixes: 711859cd0d07 ("kni: fix kernel FIFO synchronization") Signed-off-by: Thomas Monjalon --- diff --git a/kernel/linux/kni/kni_fifo.h b/kernel/linux/kni/kni_fifo.h index 2cb3a4a7b8..3f4781c2ee 100644 --- a/kernel/linux/kni/kni_fifo.h +++ b/kernel/linux/kni/kni_fifo.h @@ -8,6 +8,14 @@ #include +/* Skip some memory barriers on Linux < 3.14 */ +#ifndef smp_load_acquire +#define smp_load_acquire(a) (*(a)) +#endif +#ifndef smp_store_release +#define smp_store_release(a, b) *(a) = (b) +#endif + /** * Adds num elements into the fifo. Return the number actually written */