diff options
author | Josh Gao <jmgao@google.com> | 2020-09-11 15:31:31 -0700 |
---|---|---|
committer | Josh Gao <jmgao@google.com> | 2021-01-11 13:56:10 -0800 |
commit | 192102c35b46521bbe5a900f5a3036a406801af4 (patch) | |
tree | 7d71e80654ebe35cac3fca80b700517c176c3245 /services/java/com/android/server/SystemServer.java | |
parent | 3ede7b493004b9c614f6c5ad21d38d8c39884470 (diff) |
fdtrack: GC before checking fd count.
Test: treehugger
Change-Id: I0f1d59ae4240a24f8b8e4b015c1923acb1140bce
Diffstat (limited to 'services/java/com/android/server/SystemServer.java')
-rw-r--r-- | services/java/com/android/server/SystemServer.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 4c33ad39a9b8..2b54599ec873 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -439,6 +439,12 @@ public final class SystemServer { boolean enabled = false; while (true) { int maxFd = getMaxFd(); + if (maxFd > enableThreshold) { + // Do a manual GC to clean up fds that are hanging around as garbage. + System.gc(); + maxFd = getMaxFd(); + } + if (maxFd > enableThreshold && !enabled) { Slog.i("System", "fdtrack enable threshold reached, enabling"); System.loadLibrary("fdtrack"); |