diff options
author | Maciej Żenczykowski <maze@google.com> | 2020-06-18 12:22:08 +0000 |
---|---|---|
committer | Maciej Zenczykowski <maze@google.com> | 2020-06-18 20:02:11 +0000 |
commit | 2d12844a4e2605886539d5011d94ae94b090c897 (patch) | |
tree | 20442e4baf7f7a4ce24121ec599e0005efd2c731 | |
parent | 2464ddb0dfbe86771f371d545139dd47db36bb44 (diff) | |
download | platform_system_bpf-2d12844a4e2605886539d5011d94ae94b090c897.tar.gz platform_system_bpf-2d12844a4e2605886539d5011d94ae94b090c897.tar.bz2 platform_system_bpf-2d12844a4e2605886539d5011d94ae94b090c897.zip |
waitForProgsLoaded() - reduce log spaminess
Logging every 5s isn't actually useful and it just gets the important stuff out
of log buffers.
Test: adb logcat -s 'bpfloader:D' 'BpfUtils:D' 'LibBpfLoader:D'
...
06-17 01:02:34.205 433 433 E bpfloader: --- DO NOT EXPECT SYSTEM TO BOOT SUCCESSFULLY ---
06-17 01:02:38.103 335 335 W LibBpfLoader: Waited 5s for bpf.progs_loaded, still waiting...
06-17 01:02:48.104 335 335 W LibBpfLoader: Waited 10s for bpf.progs_loaded, still waiting...
06-17 01:03:08.104 335 335 W LibBpfLoader: Waited 20s for bpf.progs_loaded, still waiting...
06-17 01:04:12.226 335 335 W LibBpfLoader: Waited 60s for bpf.progs_loaded, still waiting...
06-17 01:04:17.628 1324 1324 W LibBpfLoader: Waited 5s for bpf.progs_loaded, still waiting...
06-17 01:04:27.629 1324 1324 W LibBpfLoader: Waited 10s for bpf.progs_loaded, still waiting...
06-17 01:04:47.629 1324 1324 W LibBpfLoader: Waited 20s for bpf.progs_loaded, still waiting...
06-17 01:05:50.163 1324 1324 W LibBpfLoader: Waited 60s for bpf.progs_loaded, still waiting...
06-17 01:05:55.551 1741 1741 W LibBpfLoader: Waited 5s for bpf.progs_loaded, still waiting...
Bug: 150040815
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Original-Change: https://android-review.googlesource.com/1336224
Merged-In: I77b82bf44141df8ffab1d11d01a89c3927fbe827
Change-Id: I77b82bf44141df8ffab1d11d01a89c3927fbe827
-rw-r--r-- | libbpf_android/Loader.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/libbpf_android/Loader.cpp b/libbpf_android/Loader.cpp index 5a65c1b..da6a109 100644 --- a/libbpf_android/Loader.cpp +++ b/libbpf_android/Loader.cpp @@ -665,12 +665,21 @@ int loadProg(const char* elfPath, bool* isCritical) { return ret; } +static bool waitSecondsForProgsLoaded(int seconds) { + bool ok = + android::base::WaitForProperty("bpf.progs_loaded", "1", std::chrono::seconds(seconds)); + if (!ok) ALOGW("Waited %ds for bpf.progs_loaded, still waiting...", seconds); + return ok; +} + 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..."); - } + if (waitSecondsForProgsLoaded(5)) return; + if (waitSecondsForProgsLoaded(10)) return; + if (waitSecondsForProgsLoaded(20)) return; + while (!waitSecondsForProgsLoaded(60)) + ; // loop until success } } // namespace bpf |