mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-11-07 01:53:24 +09:00
The leg now reports OK on the device: offered=3 imported=3 drawn=3 hostReadback=3 agreed=3 -- three self-allocated AHardwareBuffers from the display host imported as EGLImages by this side, drawn into, and read back by the host at both the first pixel and the far corner. Getting there took one measurement and one correction. The handle message is 256 bytes on this path and recvHandleFromUnixSocket drains it exactly (pending 256 -> 100, then 0 -> 100, then 0 -> 0), so the description that follows it was never the problem; the comparison was. This leg was checking the display host's messages against kT4Magic -- the dma-buf protocol's magic, which belongs to the container peer -- while the host stamps AHB_BRIDGE_MAGIC on all three of its messages. A perfect round trip was reported as 'the offer's sideband did not follow its handle', which named the wrong cause and cost the time. kT4HostMagic is that value, and the leg now also prints the handle's footprint and the bytes it actually read, so the next failure of this shape cannot be mistaken for the other one.