On 2018-01-19 03:03:43, Tapani Pälli wrote: > On 01/19/2018 11:22 AM, Jordan Justen wrote: > > On 2018-01-18 22:08:17, Tapani Pälli wrote: > >> On 01/18/2018 08:18 PM, Jordan Justen wrote: > >>> On 2018-01-15 04:31:43, Tapani Pälli wrote: > >>>> This can/should be modified depending on needs. AFAIK by default, > >>>> this is the only path that can be read/written to by anyone. > >>>> > >>>> Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> > >>>> --- > >>>> Android.common.mk | 1 + > >>>> 1 file changed, 1 insertion(+) > >>>> > >>>> diff --git a/Android.common.mk b/Android.common.mk > >>>> index 52dc7bff3b..7edbbfc0f2 100644 > >>>> --- a/Android.common.mk > >>>> +++ b/Android.common.mk > >>>> @@ -47,6 +47,7 @@ LOCAL_CFLAGS += \ > >>>> LOCAL_CFLAGS += \ > >>>> -DANDROID_API_LEVEL=$(PLATFORM_SDK_VERSION) \ > >>>> -DENABLE_SHADER_CACHE \ > >>>> + -DMESA_GLSL_CACHE_DIR="/sdcard" \ > >>> > >>> Is this used when EGL_ANDROID_blob_cache is being used? > >>> > >>> My thought is that if we are running under android with > >>> EGL_ANDROID_blob_cache, then we should never attempt to write any > >>> files with src/util/disk_cache.c. This might cause a little rework, > >>> since the shader cache want to write/manage the index file, but can we > >>> skip this and only use the blob cache read/write function when > >>> EGL_ANDROID_blob_cache is available? > >> > >> I'm a bit pessimistic about that. Since cache location depends on > >> running app that would mean every app has it's own index (that not > >> really a problem though but is different from desktop). > > > > I suspect that the blob_cache is app specific. Therefore it also makes > > sense that the index would be app specific. > > > >> The big problem I see there that index will be then 'just another > >> cache entry', I'll have to get more familiar with Android's > >> implementation to see if there would be way to make this entry > >> 'special' so that it would not touch it. > > > > My suggestion was that we should scrap the index entirely when in > > EGL_ANDROID_blob_cache mode. Essentially the Android OS is managing > > the cache index for us, so hopefully we don't need to maintain one. > > One issue to tackle is that currently _mesa_glsl_compile_shader uses > disk_cache_has_key() for detecting if we can skip shader compilation. > This uses 'stored_keys' which is mmap of the index file.
It looks like it would be easy to implement 'has_key' with the blob_cache get function. So, I think we could still keep the same external interface for disk_cache, but internally it can use blob_cache when present. -Jordan _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev