Serialize AM.getContentProvider() calls in client side
Th wait() call in AMS.getContentProviderImpl() can cause a deadlock when it
starts a new process for a target provider and all system server binder threads
are reaching out to the same provider at the same time, because AMS won't be
able to receive a callback from the provider process.
Let's serialize access to AM.getContentProvider() to avoid this scenario.
Longer team, we should stop waiting in the system server and instead do so in
the client side.
Bug: 74523247
Test: Boot, add a google account, and let syncs run and finish.
Test: Watch free video on Coursera
Change-Id: If5be2dc4b6f22f72d1bb3aa1b5b4d49f20c8d94d
1 file changed