Allow concurrent eglSwapBuffers() with same display but different surfaces
Allow concurrent eglSwapBuffers() with same display but different surfaces

... by updating eglSwapBuffers() to give up the display lock before
calling surface->swap().

Bug: b/135742693
Test: built locally
Test: presubmit
Test: cts -m CtsMediaTestCases -t android.media.cts.HeifWriterTest#testInputSurface_Grid_Handler
Test: dEQP-GLES3 tests through cherry
Change-Id: I816d30e80077b40e8396bf8d6ae5bb236753e3ea
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/37769
Reviewed-by: Chris Forbes <c3279c50043e18e9442c1ae071cafa0e7a4ca967@google.com>
Reviewed-by: Alexis Hétu <1c7141772178a7e80858c3db5052b328076f08f4@google.com>
Tested-by: Jason Macnak <76caa58940b8c6785e996f522e85b625ac7c7baa@google.com>
Kokoro-Presubmit: kokoro <2ac7b1f3fa578934c95181d4272be0d3bca00121@google.com>

google/swiftshader,bkaradzic/SwiftShader,google/swiftshader,bkaradzic/SwiftShader,bkaradzic/SwiftShader,bkaradzic/SwiftShader,bkaradzic/SwiftShader,google/swiftshader