Prevent a 4-way binder interlock leading to a leak.
System server | NetworkStack | NetworkMonitorCallbacks ←----|--- NetworkMonitorCallbacks$Stub$Proxy ↓ | ↑ NetworkAgentInfo | NetworkMonitor ↓ | ↑ NetworkMonitor$Stub$Proxy ----|---→ NetworkMonitorImpl Bug: b/133174607 Test: Manual. The simplest artifact is observed by watching the output of adb shell dumpsys meminfo -d com.android.networkstack | grep 'Proxy Binders' while connecting and disconnecting multiple times to any network. This will display the number of binder proxies. Before this, the binder proxy count increases by 1 with each connection and never goes down (there is some noise, as proxy objects are sometimes created for other reasons, and get GC'd eventually). After this, the binder proxy count is always eventually stable at 27 + connected network count. See the bug for the complete analysis. Change-Id: Ide2428dab3fcd6d7cd00aa2a9fd99d6c99b815a4
Loading
Please register or sign in to comment