[Mesa-dev] [PATCH 2/4] util/disk_cache: add struct cache_item_metadata

Michel Dänzer michel at daenzer.net
Tue Aug 22 08:02:22 UTC 2017


On 22/08/17 10:02 AM, Pierre-Loup A. Griffais wrote:
> On 08/18/2017 04:02 AM, Nicolai Hähnle wrote:
>> On 15.08.2017 01:26, Timothy Arceri wrote:
>>> This will be used to store more information about the cache item
>>> in it's header. This information is intended for 3rd party and
>>> cache analysis use but can also be used for detecting the unlikely
>>> scenario of cache collisions.
>>> ---
>>>   src/util/disk_cache.h | 22 ++++++++++++++++++++++
>>>   1 file changed, 22 insertions(+)
>>>
>>> diff --git a/src/util/disk_cache.h b/src/util/disk_cache.h
>>> index 9aade16a9e..d6d7609ffb 100644
>>> --- a/src/util/disk_cache.h
>>> +++ b/src/util/disk_cache.h
>>> @@ -34,20 +34,42 @@
>>>   #ifdef __cplusplus
>>>   extern "C" {
>>>   #endif
>>>   /* Size of cache keys in bytes. */
>>>   #define CACHE_KEY_SIZE 20
>>>   typedef uint8_t cache_key[CACHE_KEY_SIZE];
>>> +/* WARNING: 3rd party applications might be reading the cache item
>>> metadata.
>>> + * Do not change these values without making the change widely known.
>>> + * Please contact Valve developers and make them aware of this change.
>>> + */
>>> +#define CACHE_ITEM_TYPE_UNKNOWN  0x0
>>> +#define CACHE_ITEM_TYPE_GLSL     0x1
>>> +
>>> +typedef uint32_t cache_item_metadata_type;
>>
>> Please don't do typedefs like that, they just obfuscate. If you don't
>> want to just use uint32_t, I'd suggest to use an enum.
>>
>> At a higher level, what is this actually good for? So I get Valve
>> wants to parse something in the shader cache, but why / what for?
> 
> Steam looks at local entries and delete leftover ones should you upgrade
> Mesa or your GPU.

That's rather questionable. Steam should leave purging old cache entries
to Mesa.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the mesa-dev mailing list