graphics: fix use-after-free in mapper 2.0 passthrough
The mapper 2.0 gralloc passthrough keeps a set of the native_handle_t pointers of all imported buffers. This change ensures that the underlying HAL wrapper freeing the native_handle_t is performed atomically with respect to accesses to the passthrough's native_handle_t pointer set. This fixes a race where a native_handle_t could be reallocated between being freed by the HAL wrapper and removed from the passthrough's set, which could then cause the import which happened to reallocate that native_handle_t to spuriously fail. Bug: 170798776 Test: Manually very no more spurious import failures in ARCVM's decoder. Change-Id: I654a44e94adb319f54fb462f4484db414ca1b154
Loading
Please register or sign in to comment