On 5 June 2017 at 17:23, Jason Ekstrand <ja...@jlekstrand.net> wrote:
> On Mon, Jun 5, 2017 at 9:19 AM, Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl > > wrote: > >> On Mon, Jun 5, 2017 at 5:40 PM, Jason Ekstrand <ja...@jlekstrand.net> >> wrote: >> > On Mon, Jun 5, 2017 at 7:48 AM, Alex Smith <asm...@feralinteractive.com >> > >> > wrote: >> >> >> >> As already done by RADV, this code is lifted straight from there. >> > >> > >> > I think this is a good idea but I'm very confused by the code. >> > >> >> >> >> Signed-off-by: Alex Smith <asm...@feralinteractive.com> >> >> --- >> >> src/intel/vulkan/anv_device.c | 24 +++++++++++++++++++++++- >> >> 1 file changed, 23 insertions(+), 1 deletion(-) >> >> >> >> diff --git a/src/intel/vulkan/anv_device.c >> b/src/intel/vulkan/anv_device.c >> >> index aacd07f..8090eea 100644 >> >> --- a/src/intel/vulkan/anv_device.c >> >> +++ b/src/intel/vulkan/anv_device.c >> >> @@ -754,6 +754,28 @@ void anv_GetPhysicalDeviceFeatures2KHR( >> >> } >> >> } >> >> >> >> +static uint32_t anv_get_driver_version() >> > >> > >> > First off, it would be good to put this in src/vulkan/ >> >> Agreed. >> >> > >> >> >> >> +{ >> >> + const char *minor_string = strchr(VERSION, '.'); >> >> + const char *patch_string = minor_string ? strchr(minor_string + 1, >> >> ','): NULL; >> > >> > >> > Why are we searching for "," and not "." here? >> >> Looks like I made a typo, nice find! >> > >> >> >> >> + int major = atoi(VERSION); >> >> + int minor = minor_string ? atoi(minor_string + 1) : 0; >> >> + int patch = patch_string ? atoi(patch_string + 1) : 0; >> >> + if (strstr(VERSION, "devel")) { >> >> + if (patch == 0) { >> >> + patch = 99; >> > >> > >> > Is this really what we want? When I checkout the mesa-17.0.0 tag and >> > configure, I see this in config.log: >> > >> > #define VERSION "17.0.0" >> > >> > This code looks like it would call that 16.99.99 which is a version that >> > never existed. Perhaps the better thing to do is to look for >> "-something" >> > at the end of the string, assert that patch == 0, and do the decrement. >> > That should catch -rcN as well as -devel. >> > >> > Dave? Bas? >> >> Note the strstr, which checks for devel, > > > Drp... You're right. > > >> so with 17.0.0, that >> decrement shouldn't happen. I'm open to generalizing this, I mostly >> did this for getting a sense of what people used on vulkan.gpuinfo.org >> and so the rc's weren't really a priority. >> > > I'm not sure what to do about RCs. I think it may be best to just let > those count as the version for which they are an RC. In which case the > only needed change is the typo fix and moving it to src/vulkan/util. > I can sort that out tomorrow. Alex > > >> - Bas >> >> > >> > --Jason >> > >> >> >> >> + if (minor == 0) { >> >> + minor = 99; >> >> + --major; >> >> + } else >> >> + --minor; >> >> + } else >> >> + --patch; >> >> + } >> >> + uint32_t version = VK_MAKE_VERSION(major, minor, patch); >> >> + return version; >> >> +} >> >> + >> >> void anv_GetPhysicalDeviceProperties( >> >> VkPhysicalDevice physicalDevice, >> >> VkPhysicalDeviceProperties* pProperties) >> >> @@ -886,7 +908,7 @@ void anv_GetPhysicalDeviceProperties( >> >> >> >> *pProperties = (VkPhysicalDeviceProperties) { >> >> .apiVersion = VK_MAKE_VERSION(1, 0, 42), >> >> - .driverVersion = 1, >> >> + .driverVersion = anv_get_driver_version(), >> >> .vendorID = 0x8086, >> >> .deviceID = pdevice->chipset_id, >> >> .deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU, >> >> -- >> >> 2.9.4 >> >> >> >> _______________________________________________ >> >> mesa-dev mailing list >> >> mesa-dev@lists.freedesktop.org >> >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> > >> > >> > >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev