The passed regions are in surface coordinates, but eglSwapBuffersWithDamage() is in buffer coordinates.