[Replicant] [PATCH 0/7] Per process libagl/llvmpipe

Joonas Kylmälä joonas.kylmala at iki.fi
Mon Oct 14 13:25:43 UTC 2019


Hi,

pushed all except the last patch.

Joonas Kylmälä:
> Hi,
> 
> thanks for the reply!
> 
> I'm planning to push these patches tomorrow so if you have any
> objections please do that now.
> 
> Joonas
> 
> Andrés Domínguez:
>> Hi.
>>
>> As Joonas says, that last patch should not be pushed, without it we have
>> the expected behavior: it uses the system default opengles renderer.
>>
>> Andrés Domínguez
>>
>> El jue., 10 oct. 2019 a las 20:07, Joonas Kylmälä (<joonas.kylmala at iki.fi>)
>> escribió:
>>
>>> Hi,
>>>
>>> so we didn't get anyone to review these patches except the last one:
>>> <https://redmine.replicant.us/issues/1844#note-13>. The last patch
>>> turned out to be not needed as my testing showed and reading the patch's
>>> logic it is doing nothing except forcing llvmpipe which is not wanted. I
>>> suggest we push these patches except the last one now even if there is
>>> no review as more than one week has passed.
>>>
>>> I'm still hoping to hear from at least some of you in the To field of
>>> this email whether you are okay pushing the patches.
>>>
>>> Joonas
>>>
>>> Joonas Kylmälä:
>>>> Hi,
>>>>
>>>> I got this setup working successfully if I don't apply the last patch.
>>>> Without the last patch I can choose the default renderer with
>>>> instructions at
>>>>
>>> https://redmine.replicant.us/projects/replicant/wiki/Graphics#Enabling-llvmpipe-as-software-renderer
>>> .
>>>>
>>>> And then if the system default renderer is llvmpipe and I want browser
>>>> to work with libagl I run: mkdir /etc/libGLES_android && touch
>>>> /etc/libGLES_android/com.android.browser.
>>>>
>>>> And if the system default renderer is libagl and I want browser to work
>>>> with llvmpipe I run: mkdir /etc/libGLES_mesa/ && touch
>>>> /etc/libGLES_mesa/com.android.browser
>>>>
>>>> Without the last patch:
>>>>
>>>> Tested-by: Joonas Kylmälä <joonas.kylmala at iki.fi>
>>>>
>>>> Joonas
>>>>
>>>> Andrés Domínguez:
>>>>> Selection of libagl or llvmpipe at EGL link time. It's based
>>>>> on the work of Jookia and JeremyRand, but it uses files for
>>>>> configuration instead of properties or symlinks.
>>>>>
>>>>>
>>>>> First it looks for files with the names libGLES_mesa and
>>>>> libGLES_android (in this order) inside
>>>>> /data/data/<app directory>/, it links to the first it finds.
>>>>> Then it looks for a file with process name inside
>>>>> /system/etc/libGLES_mesa/ and /system/etc/libGLES_android/
>>>>> (again in this order). This is useful for processes that
>>>>> don't have app folder in the data partition, like
>>>>> surfaceflinger, system-server or bootanimation.
>>>>> Surfaceflinger should definitely use libagl, because it's
>>>>> extremely slow with llvmpipe.
>>>>>
>>>>> The solution is not elegant but it's simple and I don't
>>>>> except this to be used in Replicant 9 or latter.
>>>>>
>>>>> Andrés Domínguez
>>>>>
>>>>>
>>>>> Andrés Domínguez (2):
>>>>>   Change symlinks to files and static paths
>>>>>   Allow overrides of zygote's libGLES preload. Default to mesa
>>>>>
>>>>> JeremyRand (5):
>>>>>   EGL Loader patch to use both LLVMpipe and libagl at once
>>>>>   EGL renderer override: use symlinks instead of properties to specify
>>>>>     overrides.
>>>>>   Fix some type fails in EGL renderer override
>>>>>   Fix documentation typo in EGL renderer override
>>>>>   Fix checking of access() return value in EGL renderer override
>>>>>
>>>>>  opengl/libs/EGL/Loader.cpp | 140 ++++++++++++++++++++++++++++++-------
>>>>>  1 file changed, 114 insertions(+), 26 deletions(-)
>>>>>
>>>> _______________________________________________
>>>> Replicant mailing list
>>>> Replicant at osuosl.org
>>>> https://lists.osuosl.org/mailman/listinfo/replicant
>>>>
>>>
>>
> _______________________________________________
> Replicant mailing list
> Replicant at osuosl.org
> https://lists.osuosl.org/mailman/listinfo/replicant
> 


More information about the Replicant mailing list