drm_hwcomposer: Add optional gem caching mechanism

On some platform[1] frequent calls of the drmPrimeFDToHandle/drmModeAddFB2
may cause tremendous performance degradation. Since in that case, each buffer
registration may lead to interdomain memory mapping(which actually will be
the cause of slowdown).

In case, if DRM driver[2] has only a primary plane(i.e. all composition done
by OpenGL) there is no practical sense to import/release the same render targets
per each frame. This patch utilizes prime_fd to clearly identify buffer on which
 native handle points.

1. Considering hypervisor-based guest domain, using drm [2] driver.
2. https://elixir.bootlin.com/linux/v5.0/source/drivers/gpu/drm/xen

Signed-off-by: Andrii Chepurnyi <andrii_chepurnyi@epam.com>
1 job for rfq_caching in 45 seconds (queued for 1 second)
latest