[Mesa-dev] [PATCH] anv: add KHR_get_physical_device_properties2 support

Chad Versace chadversary at chromium.org
Wed Jan 25 20:06:28 UTC 2017


On Tue 24 Jan 2017, Lionel Landwerlin wrote:
> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
> ---
>  src/intel/vulkan/anv_device.c  | 593 +++++++++++++++++++++++++----------------
>  src/intel/vulkan/anv_formats.c |  42 +++
>  2 files changed, 398 insertions(+), 237 deletions(-)

> +static void
> +anv_physical_device_get(struct anv_physical_device *device,
> +                        VkStructureType type,
> +                        void *structure)
> +{

I don't believe a unified anv_physical_device_get() is a good idea,
especially considering future extensions in the Khronos pipeline. There
are problems such as:

  - Which sType's does anv_physical_device_get() handle? Which does it
    not handle?

  - If it handles sTypes that have accompanying Vk*Info structs, then we
    have to add a void* param for the info struct. Then, when does the
    function require that `void *info` be NULL and when must it be
    non-NULL?

These problems go away if each vkGetPhysicalDeviceFoo() handles only the
input/output structs that the spec requires it to handle, and no
additional structs.

I've submitted a v2 of my patch series that uses Jason's requested
for-loop.


More information about the mesa-dev mailing list