> Currently DPDK sets CACHE_LINE_SIZE value to 64 by default if the macro is > not already defined. > > FreeBSD defines a CACHE_LINE_SIZE macro in the header file: > /usr/include/machine/param.h > > These macros set different values, 64 in DPDK vs 128 in FreeBSD, causing > broken application behaviour if the system header file is included before > rte_memory.h (where DPDK sets CACHE_LINE_SIZE). > > This is the case for some examples like ip_fragmentation. > In such application, DPDK library code would assume 64 bytes cache line size > and the application code would assume 128 cache line size. > Given that mbufs now take two cache lines and that the structure is being > aligned based on this value, the result is broken application functionality. > > The approach to fix this issue is to add RTE_ prefix to all CACHE_LINE_xxxx > related macros to avoid conflicts. > > Sergio Gonzalez Monroy (3): > Add RTE_ prefix to CACHE_LINE_SIZE macro > Add RTE_ prefix to CACHE_LINE_MASK macro > Add RTE_ prefix to CACHE_LINE_ROUNDUP macro
Updated and applied in 1 commit. Thanks -- Thomas