From 9ed3385f7111d8e30d78f013f41294f603e7f2bd Mon Sep 17 00:00:00 2001 From: Bruce Richardson Date: Fri, 3 Jan 2020 11:52:42 +0000 Subject: [PATCH] eal/freebsd: update CPU macro for FreeBSD 13 In (currently unreleased) FreeBSD 13, the CPU_NAND macro has been renamed to CPU_ANDNOT, so we need to use different DPDK-specific macros depending on what system-defined ones are present. Signed-off-by: Bruce Richardson --- lib/librte_eal/freebsd/eal/include/rte_os.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/librte_eal/freebsd/eal/include/rte_os.h b/lib/librte_eal/freebsd/eal/include/rte_os.h index a5efe618f5..eeb750cd81 100644 --- a/lib/librte_eal/freebsd/eal/include/rte_os.h +++ b/lib/librte_eal/freebsd/eal/include/rte_os.h @@ -29,6 +29,9 @@ typedef cpuset_t rte_cpuset_t; CPU_COPY(&tmp, dst); \ } while (0) #define RTE_CPU_FILL(set) CPU_FILL(set) + +/* In FreeBSD 13 CPU_NAND macro is CPU_ANDNOT */ +#ifdef CPU_NAND #define RTE_CPU_NOT(dst, src) do \ { \ cpuset_t tmp; \ @@ -36,5 +39,14 @@ typedef cpuset_t rte_cpuset_t; CPU_NAND(&tmp, src); \ CPU_COPY(&tmp, dst); \ } while (0) +#else +#define RTE_CPU_NOT(dst, src) do \ +{ \ + cpuset_t tmp; \ + CPU_FILL(&tmp); \ + CPU_ANDNOT(&tmp, src); \ + CPU_COPY(&tmp, dst); \ +} while (0) +#endif #endif /* _RTE_OS_H_ */ -- 2.20.1