Quick fix for possible deadlock in LMS
LMS dispatches in-process location events while holding locks, which can lead to deadlock if combined with another lock. This went from a possibility to a definitive deadlock with the introduction of the getCurrentLocation cancel() API. This fix prevents that deadlock by not holding a lock while canceling. It is still technically possible for other components to introduce deadlock by using their own locks within the system process, but as there are very few location clients inside the system server, and none of them appear to be at risk right now, a complete fix is delayed until S. Bug: 149780283 Test: presubmits Change-Id: I9d202adc65380881969d276c470ef1bf52828e82
Loading
Please register or sign in to comment