[Mesa-dev] [PATCH] anv: Use a single global API patch version

Jason Ekstrand jason at jlekstrand.net
Mon Jun 18 16:27:56 UTC 2018


On Mon, Jun 18, 2018 at 2:33 AM, Lionel Landwerlin <
lionel.g.landwerlin at intel.com> wrote:

> I was wondering whether we should pick up the patch version from the
> registry.
>

I've thought about that.  However, I like the manual step of someone saying
"Yes, I've been paying attention and I'm pretty sure we're still
compliant.  I'm not sure how much we actually gain from that though.  In
practice it probably just means that the number doesn't get bumped as often
as it should. :-/


> Anyway :
>
> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
>

Thanks!


>
> On 18/06/18 00:29, Jason Ekstrand wrote:
>
>> The Vulkan API has only one patch version shared among all of the
>> major.minor versions.  We should also advertise the same patch version
>> regardless of major.minor.
>>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106941
>> ---
>>   src/intel/vulkan/anv_extensions.py     | 17 ++++++++++-------
>>   src/intel/vulkan/anv_extensions_gen.py |  2 +-
>>   2 files changed, 11 insertions(+), 8 deletions(-)
>>
>> diff --git a/src/intel/vulkan/anv_extensions.py
>> b/src/intel/vulkan/anv_extensions.py
>> index 8160864685f..18851c0ff90 100644
>> --- a/src/intel/vulkan/anv_extensions.py
>> +++ b/src/intel/vulkan/anv_extensions.py
>> @@ -44,20 +44,22 @@ class Extension:
>>           self.enable = _bool_to_c_expr(enable)
>>     class ApiVersion:
>> -    def __init__(self, max_patch_version, enable):
>> -        self.max_patch_version = max_patch_version
>> +    def __init__(self, version, enable):
>> +        self.version = version
>>           self.enable = _bool_to_c_expr(enable)
>>   +API_PATCH_VERSION = 76
>> +
>>   # Supported API versions.  Each one is the maximum patch version for
>> the given
>>   # version.  Version come in increasing order and each version is
>> available if
>>   # it's provided "enable" condition is true and all previous versions are
>>   # available.
>>   API_VERSIONS = [
>> -    ApiVersion('1.0.57',    True),
>> +    ApiVersion('1.0',   True),
>>         # DRM_IOCTL_SYNCOBJ_WAIT is required for VK_KHR_external_fence
>> which is a
>>       # required core feature in Vulkan 1.1
>> -    ApiVersion('1.1.0',     'device->has_syncobj_wait'),
>> +    ApiVersion('1.1',   'device->has_syncobj_wait'),
>>   ]
>>     MAX_API_VERSION = None # Computed later
>> @@ -160,6 +162,7 @@ class VkVersion:
>>     MAX_API_VERSION = VkVersion('0.0.0')
>>   for version in API_VERSIONS:
>> -    version.max_patch_version = VkVersion(version.max_patch_version)
>> -    assert version.max_patch_version > MAX_API_VERSION
>> -    MAX_API_VERSION = version.max_patch_version
>> +    version.version = VkVersion(version.version)
>> +    version.version.patch = API_PATCH_VERSION
>> +    assert version.version > MAX_API_VERSION
>> +    MAX_API_VERSION = version.version
>> diff --git a/src/intel/vulkan/anv_extensions_gen.py
>> b/src/intel/vulkan/anv_extensions_gen.py
>> index 5ea82204eea..b75cb3e6fbb 100644
>> --- a/src/intel/vulkan/anv_extensions_gen.py
>> +++ b/src/intel/vulkan/anv_extensions_gen.py
>> @@ -157,7 +157,7 @@ anv_physical_device_api_version(struct
>> anv_physical_device *device)
>>   %for version in API_VERSIONS:
>>       if (!(${version.enable}))
>>           return version;
>> -    version = ${version.max_patch_version.c_vk_version()};
>> +    version = ${version.version.c_vk_version()};
>>     %endfor
>>       return version;
>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180618/a0da4dd0/attachment.html>


More information about the mesa-dev mailing list