composer: Guard layer buffer access around hotplug disconnect
Hotplug disconnect operation releases composer display resources including
imported gralloc layer buffers. Guard layer buffer access by composer
around hotplug disconnect.
* Hotplug notify Display connect after adding to DisplayData map.
* Erase Display from DisplayData map *after* hotplug notifying disconnect.
* Wait for input command message queue to process before erasing the
Display from the DisplayData map.
* Prevent Display erasure from DisplayData map during command message
queue processing.
* Drop commands to a Display if it is not found in the DisplayData map.
* Move post-Hotplug disconnect wait to QtiComposerClient::onHotplug().
CRs-Fixed: 2466021
Change-Id: Ibd5b2b03150b34f2613fc93ec0241ca2787938b6
3 files changed