summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Żenczykowski <maze@google.com>2020-06-15 10:50:43 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-06-15 10:50:43 +0000
commitb7feff2c6a9f17e1e623bf4b3b757cf8351a7b0e (patch)
tree0732d7bdc74a6d5531dd34f36454eb5ec5a83b6f
parentc0ccdf30c058433400d0ffe656254270a821bc9c (diff)
parentd16be56e731fd82ea803cd35c74e431cefbce3c3 (diff)
downloadbpf-b7feff2c6a9f17e1e623bf4b3b757cf8351a7b0e.tar.gz
only set 'bpf.progs_loaded' property on eBPF capable devices... am: 007c9dd245 am: d16be56e73
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/bpf/+/11859849 Change-Id: I75ae16f3ebc871c33501f60f199bd72998a43eb0
-rw-r--r--bpfloader/BpfLoader.cpp8
-rw-r--r--libbpf_android/Loader.cpp2
2 files changed, 6 insertions, 4 deletions
diff --git a/bpfloader/BpfLoader.cpp b/bpfloader/BpfLoader.cpp
index 5390fb4..9e348e5 100644
--- a/bpfloader/BpfLoader.cpp
+++ b/bpfloader/BpfLoader.cpp
@@ -72,10 +72,10 @@ void loadAllElfObjects(void) {
}
int main() {
- if (android::bpf::isBpfSupported()) {
- // Load all ELF objects, create programs and maps, and pin them
- loadAllElfObjects();
- }
+ if (!android::bpf::isBpfSupported()) return 0;
+
+ // Load all ELF objects, create programs and maps, and pin them
+ loadAllElfObjects();
if (android::base::SetProperty("bpf.progs_loaded", "1") == false) {
ALOGE("Failed to set bpf.progs_loaded property\n");
diff --git a/libbpf_android/Loader.cpp b/libbpf_android/Loader.cpp
index f808dc6..4244eb7 100644
--- a/libbpf_android/Loader.cpp
+++ b/libbpf_android/Loader.cpp
@@ -650,6 +650,8 @@ int loadProg(const char* elfPath) {
}
void waitForProgsLoaded() {
+ if (!android::bpf::isBpfSupported()) return;
+
while (!android::base::WaitForProperty("bpf.progs_loaded", "1", std::chrono::seconds(5))) {
ALOGW("Waited 5s for bpf.progs_loaded, still waiting...");
}