8bd30b3cf3
Binder currently may service an incoming oneway transaction whenever an outbound oneway call is made (if there is already a pending incoming oneway call waiting). The unexpected nested method call blocks forever on a recursive mutex acquire because healthd is single- threaded. The binder behavior is considered a bug and may change in the future. For now, work around this in healthd. Make a local copy of the listeners list, then drop the lock and perform the outbound calls on the local copy of the list. Bug: 38201220 Test: Marlin with modified client calling scheduleUpdate() repeatedly Change-Id: If35c2847556245921e2aff808ff747bb60356811 |
||
---|---|---|
.. | ||
images | ||
include/healthd | ||
tests | ||
Android.mk | ||
animation.h | ||
AnimationParser.cpp | ||
AnimationParser.h | ||
BatteryMonitor.cpp | ||
BatteryPropertiesRegistrar.cpp | ||
BatteryPropertiesRegistrar.h | ||
healthd.cpp | ||
healthd_board_default.cpp | ||
healthd_mode_android.cpp | ||
healthd_mode_charger.cpp |