68902822d6
If the user specifies a backend name explicitly via an environment variable and it is not in the list of built-in backends, attempt to load it at runtime. runtime-loaded backends get a new gbm_backend_desc struct instance for each device using them (A small increase in memory usage to eliminate the need for the locking and bookkeeping sharing them would require), so these structures need to be freed when destroying devices using runtime-loaded backends. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9902>