diff options
author | Mohsin Kazmi <sykazmi@cisco.com> | 2024-01-17 12:00:16 +0000 |
---|---|---|
committer | Damjan Marion <dmarion@0xa5.net> | 2024-01-19 12:32:55 +0000 |
commit | c60266d1ea9604f4651092d79bed8ec0b571544a (patch) | |
tree | 72c4854f7faead3e9a6d07c4a7c5fc85a97e6f21 /extras/libmemif | |
parent | c3b416c49253bcf3223d2aec8c5ca06f0c78e6f9 (diff) |
memif: use VPP cacheline size for memif when compiling within VPP
Type: make
memif.h file is independent code which can be used outside of
VPP. Hence it uses its own cacheline size MACRO. This patch
sets the value of MEMIF_CACHELINE_SIZE in the cmake file for
memif plugin to VPP_CACHE_LINE_SIZE.
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I8185e78897f4571f1a0430dd7e758816e127444c
Diffstat (limited to 'extras/libmemif')
-rw-r--r-- | extras/libmemif/CMakeLists.txt | 11 | ||||
-rw-r--r-- | extras/libmemif/src/CMakeLists.txt | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/extras/libmemif/CMakeLists.txt b/extras/libmemif/CMakeLists.txt index 8f057e98f3a..1526abdce3a 100644 --- a/extras/libmemif/CMakeLists.txt +++ b/extras/libmemif/CMakeLists.txt @@ -61,6 +61,17 @@ set(CMAKE_INSTALL_MESSAGE NEVER) find_package(Threads REQUIRED) include_directories(${CMAKE_THREADS_INCLUDE_DIRS}) +if(DEFINED LIBMEMIF_CACHELINE_SIZE) + # Cache line size assigned via cmake args +elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64.*|AARCH64.*)") + set(LIBMEMIF_CACHELINE_SIZE 128) +else() + set(LIBMEMIF_CACHELINE_SIZE 64) +endif() + +message(STATUS "System Architecture: ${CMAKE_SYSTEM_PROCESSOR}") +message(STATUS "Libmemif Cacheline Size: ${LIBMEMIF_CACHELINE_SIZE}") + check_function_exists(memfd_create HAVE_MEMFD_CREATE) if(${HAVE_MEMFD_CREATE}) add_definitions(-DHAVE_MEMFD_CREATE) diff --git a/extras/libmemif/src/CMakeLists.txt b/extras/libmemif/src/CMakeLists.txt index ddb8a52f82b..8b3223d0990 100644 --- a/extras/libmemif/src/CMakeLists.txt +++ b/extras/libmemif/src/CMakeLists.txt @@ -34,6 +34,7 @@ include_directories(${HEADERS_DIR}) add_library(memif SHARED ${MEMIF_SOURCES}) target_link_libraries(memif ${CMAKE_THREAD_LIBS_INIT}) +target_compile_definitions(memif PUBLIC MEMIF_CACHELINE_SIZE=${LIBMEMIF_CACHELINE_SIZE}) find_library(LIB_BSD bsd) if(LIB_BSD) |