Merge "Adding memevents subdirectory for bpf" into main
diff --git a/loader/Android.bp b/loader/Android.bp
index 5854f86..4f66cdf 100644
--- a/loader/Android.bp
+++ b/loader/Android.bp
@@ -113,6 +113,10 @@
rust_binary {
name: "bpfloader",
+ cfgs: select(release_flag("RELEASE_BPF_ENABLE_LIBBPF"), {
+ true: ["enable_libbpf"],
+ default: [],
+ }),
srcs: [
"bpfloader.rs",
],
diff --git a/loader/Loader.cpp b/loader/Loader.cpp
index 1f1b082..cf6bf36 100644
--- a/loader/Loader.cpp
+++ b/loader/Loader.cpp
@@ -33,7 +33,7 @@
#include "BpfSyscallWrappers.h"
#include "bpf/BpfUtils.h"
-#include "bpf/bpf_map_def.h"
+#include "bpf_map_def.h"
#include "include/libbpf_android.h"
#include <cstdlib>
diff --git a/loader/bpfloader.rs b/loader/bpfloader.rs
index b934d98..ede1a29 100644
--- a/loader/bpfloader.rs
+++ b/loader/bpfloader.rs
@@ -16,7 +16,19 @@
//! BPF loader for system and vendor applications
+#[cfg(enable_libbpf)]
+fn load_libbpf_progs() {
+ // Libbpf loader functionality here.
+}
+
+#[cfg(not(enable_libbpf))]
+fn load_libbpf_progs() {
+ // Empty stub for feature flag disabled case
+}
+
fn main() {
+ load_libbpf_progs();
+
// SAFETY: Linking in the existing legacy bpfloader functionality.
// Any of the four following bindgen functions can abort() or exit()
// on failure and execNetBpfLoadDone() execve()'s.
diff --git a/progs/bpfRingbufProg.c b/progs/bpfRingbufProg.c
index c189e6c..4f268bf 100644
--- a/progs/bpfRingbufProg.c
+++ b/progs/bpfRingbufProg.c
@@ -21,9 +21,7 @@
#define TEST_RINGBUF_MAGIC_NUM 12345
// This ring buffer is for testing purposes only.
-DEFINE_BPF_RINGBUF_EXT(test_ringbuf, __u64, 4096, AID_ROOT, AID_ROOT, 0660, "", "", PRIVATE,
- BPFLOADER_MIN_VER, BPFLOADER_MAX_VER,
- LOAD_ON_ENG, LOAD_ON_USER, LOAD_ON_USERDEBUG);
+DEFINE_BPF_RINGBUF(test_ringbuf, __u64, 4096, AID_ROOT, AID_ROOT, 0660);
// This program is for test purposes only - it should never be attached to a
// socket, only executed manually with BPF_PROG_RUN.