summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthiagoftsm <thiagoftsm@gmail.com>2024-04-17 18:48:48 +0000
committerGitHub <noreply@github.com>2024-04-17 18:48:48 +0000
commit668e63e748bd546a6af0eb2bc0884cc53703381a (patch)
tree66df53cb0ab5b684785e56bc64966b3b55a2df6c
parent2d70c2e0c9786706cf5b019e33bd24b30d06cb4c (diff)
Address cmake compilation (#17314)
-rw-r--r--CMakeLists.txt31
-rw-r--r--src/collectors/ebpf.plugin/ebpf_swap.c8
2 files changed, 31 insertions, 8 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e53cb3b991..c8e1ac49b1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -657,10 +657,17 @@ set(LIBNETDATA_FILES
)
if(ENABLE_PLUGIN_EBPF)
- list(APPEND LIBNETDATA_FILES
- src/libnetdata/ebpf/ebpf.c
- src/libnetdata/ebpf/ebpf.h
- )
+ message(CHECK_START "Checking for vendored libbpf for eBPF plugin")
+ if (EXISTS "${CMAKE_SOURCE_DIR}/externaldeps/libbpf/libbpf.a" AND EXISTS "${CMAKE_SOURCE_DIR}/src/libnetdata/ebpf/includes/dc.skel.h")
+ message(CHECK_PASS "found")
+ list(APPEND LIBNETDATA_FILES
+ src/libnetdata/ebpf/ebpf.c
+ src/libnetdata/ebpf/ebpf.h
+ )
+ else()
+ message(CHECK_FAIL "not found")
+ message(FATAL_ERROR "eBPF plugin requires a vendored copy of libbpf.")
+ endif()
endif()
set(LIBH2O_FILES
@@ -1898,6 +1905,22 @@ if(ENABLE_PLUGIN_EBPF)
src/collectors/ebpf.plugin/ebpf_unittest.h
src/collectors/ebpf.plugin/ebpf_functions.c
src/collectors/ebpf.plugin/ebpf_functions.h
+ src/libnetdata/ebpf/includes/cachestat.skel.h
+ src/libnetdata/ebpf/includes/dc.skel.h
+ src/libnetdata/ebpf/includes/disk.skel.h
+ src/libnetdata/ebpf/includes/fd.skel.h
+ src/libnetdata/ebpf/includes/filesystem.skel.h
+ src/libnetdata/ebpf/includes/hardirq.skel.h
+ src/libnetdata/ebpf/includes/mdflush.skel.h
+ src/libnetdata/ebpf/includes/mount.skel.h
+ src/libnetdata/ebpf/includes/oomkill.skel.h
+ src/libnetdata/ebpf/includes/process.skel.h
+ src/libnetdata/ebpf/includes/shm.skel.h
+ src/libnetdata/ebpf/includes/socket.skel.h
+ src/libnetdata/ebpf/includes/softirq.skel.h
+ src/libnetdata/ebpf/includes/swap.skel.h
+ src/libnetdata/ebpf/includes/sync.skel.h
+ src/libnetdata/ebpf/includes/vfs.skel.h
)
add_executable(ebpf.plugin ${EBPF_PLUGIN_FILES})
diff --git a/src/collectors/ebpf.plugin/ebpf_swap.c b/src/collectors/ebpf.plugin/ebpf_swap.c
index 7417db2040..ba7699dfde 100644
--- a/src/collectors/ebpf.plugin/ebpf_swap.c
+++ b/src/collectors/ebpf.plugin/ebpf_swap.c
@@ -92,9 +92,9 @@ static inline void ebpf_swap_disable_specific_probe(struct swap_bpf *obj)
{
if (!strcmp(swap_targets[NETDATA_KEY_SWAP_READPAGE_CALL].name,
swap_read[NETDATA_KEY_SWAP_READPAGE_CALL])) {
- bpf_program__set_autoload(obj->progs.netdata_swap_readpage_probe, false);
- } else {
bpf_program__set_autoload(obj->progs.netdata_swap_read_folio_probe, false);
+ } else {
+ bpf_program__set_autoload(obj->progs.netdata_swap_readpage_probe, false);
}
}
@@ -123,9 +123,9 @@ static inline void ebpf_swap_disable_specific_trampoline(struct swap_bpf *obj)
{
if (!strcmp(swap_targets[NETDATA_KEY_SWAP_READPAGE_CALL].name,
swap_read[NETDATA_KEY_SWAP_READPAGE_CALL])) {
- bpf_program__set_autoload(obj->progs.netdata_swap_readpage_fentry, false);
- } else {
bpf_program__set_autoload(obj->progs.netdata_swap_read_folio_fentry, false);
+ } else {
+ bpf_program__set_autoload(obj->progs.netdata_swap_readpage_fentry, false);
}
}