Change the position of addAndGetFrameTimestamps when queueBuffer

BufferQueueProducer's addAndGetFrameTimestamps() call Layer to add a
new time record. When SurfaceFlinger latch buffer, it will fill
related information into the new record. Nevertheless, queueBuffer
call onFrameAvailable() before addAndGetFrameTimestamps().
SurfaceFlinger main thread may latch buffer before this thread add a
new time record. Then it cause that main thread can not fill related
information into the record. Therefore addAndGetFrameTimestamps()
should be called before call onFrameAvailable().

Bug: 146193345
Test: run cts-on-gsi -m CtsDeqpTestCases -t dEQP-EGL.functional.get_frame_timestamps#rgba8888_depth_stencil
Change-Id: Ie54480b7f8626d4cfa7f9a131f3e4fdcf211915d
1 file changed