[Mesa-dev] [PATCH v2] gbm: Replace GBM_DRIVERS_PATH with LIBGL_DRIVERS_PATH
Kristian Høgsberg
krh at bitplanet.net
Thu Jul 24 13:54:35 PDT 2014
On Thu, Jul 24, 2014 at 1:43 PM, Kristian Høgsberg <krh at bitplanet.net> wrote:
> On Thu, Jul 24, 2014 at 1:32 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>> On 22/07/14 19:43, Dylan Baker wrote:
>>> GBM_DRIVERS_PATH is not documented, and only used to set the location of
>>> gbm drivers, while LIBGL_DRIVERS_PATH is used for everything else, and
>>> is documented.
>>>
>>> Generally this split leads to confusion as to why gbm doesn't work.
>>>
>>> This patch makes LIBGL_DRIVERS_PATH the main variable, but uses
>>> GBM_DRIVERS_PATH as a fallback if LIBGL_DRIVERS_PATH is NULL.
>>>
>> Dylan if we're going the LIBGL road, can we please use the GBM variable first
>> and then fallback to the LIBGL one ? This way things won't break for people
>> using the former. Meanwhile I'm writing docs/gbm.html with some rough
>> description what gbm is and all the env vars used :-)
>>
>> git grep -i gbm -- docs/
>> 0 matches found
>
> The entire public API is documented using doxygen. Look in src/gbm/main/gbm.c
... but a more introductory, overview style document would be very
nice to have as well. Thanks for doing that. It would be nice to
also include a pointer to Robs kmscube as a complete example of how to
use the API.
Kristian
> Kristian
>
>>
>> Thanks
>> Emil
>>
>>> v2: - Use GBM_DRIVERS_PATH as a fallback
>>>
>>> Signed-off-by: Dylan Baker <baker.dylan.c at gmail.com>
>>> ---
>>> src/gbm/backends/dri/gbm_dri.c | 11 +++++++++--
>>> 1 file changed, 9 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c
>>> index 347bc99..3e4851c 100644
>>> --- a/src/gbm/backends/dri/gbm_dri.c
>>> +++ b/src/gbm/backends/dri/gbm_dri.c
>>> @@ -211,9 +211,16 @@ dri_load_driver(struct gbm_dri_device *dri)
>>> char *get_extensions_name;
>>>
>>> search_paths = NULL;
>>> + /* don't allow setuid apps to use LIBGL_DRIVERS_PATH */
>>> if (geteuid() == getuid()) {
>>> - /* don't allow setuid apps to use GBM_DRIVERS_PATH */
>>> - search_paths = getenv("GBM_DRIVERS_PATH");
>>> + search_paths = getenv("LIBGL_DRIVERS_PATH");
>>> +
>>> + /* fallback path for compatability, GBM_DRIVERS_PATH should be
>>> + * dropped eventually
>>> + */
>>> + if (search_paths == NULL) {
>>> + search_paths = getenv("GBM_DRIVERS_PATH");
>>> + }
>>> }
>>> if (search_paths == NULL)
>>> search_paths = DEFAULT_DRIVER_DIR;
>>>
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list