I work with one of Android vendors, and recently faced a confusing situation.
One of the volumes' state has changed, as a result package parser is parsing packages in that volume and updating permissions etc. During this operation, packageparser has held lock over mPackages(arraymap consisting the list of packages installed on device). In the meanwhile, a change in wifi state happens, wifi in turn requests Activitymanagerservice to broadcast intent of wifi change. AMS performs broadcastIntent as a synchronised operation over itself, thus taking a lock on itself. Whilie executing this method, it needs to query the list of intent receivers, for which it is blocked on access to mPackages. While packageparser continues to parse for ~ 2min, framework watchdog times out, and restarts framework. This situation doesn't reproduce a lot often, but it can certainly happen one odd time. Please suggest what could be a good solution to handle this situation! -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/android-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/android-developers/d8d8f866-85c4-4e94-895d-5a8dc48d9d2f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.

