Skip to content

0007-hybris-omx.patch: revert !31, better memory safety, correct threading

  • Make sure various callbacks are called on the correct sequence. Discovered from building in debug mode enabling DCHECK() calls. This includes no longer deleting the object on the GPU sequence.
  • Mark the texture used by SurfaceTextureClient as "cleared".
  • Contains all memories requied by the GPU sequence in its own object, deleted on the GPU sequence separately from the main object. Code on GPU sequence is also prevented from accessing fields on the main object. This ensures that GPU sequence will not access main object's memory after it's been destroyed.
  • Remove a few fields from the main object which are set but not used.

Tested on both Volla Phone 22 and Fairphone 4. Doesn't seem to produce any more crash. The framerate of 60 FPS material seems stable enough.

Merge request reports