[Mesa-dev] [PATCH 8/8] radv: enable VK_EXT_sample_locations

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Wed Jun 5 00:57:35 UTC 2019


Most of the series looks reasonable to me besides the few comments added.

That said looking back at the patch you committed I don't think we
revert to the default locations the right way.

We return early from radv_update_multisample_state if the old pipeline
has the same number of samples, which means we might not write the
default locations if the pipelines only differ in locations and not
sample count.

On the other hand I also have concerns that it might overwrite the
sample locations between binding two pipelines which have the
locations as dynamic state.


On Thu, May 30, 2019 at 4:02 PM Samuel Pitoiset
<samuel.pitoiset at gmail.com> wrote:
>
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
>  src/amd/vulkan/radv_device.c      | 8 --------
>  src/amd/vulkan/radv_extensions.py | 2 +-
>  2 files changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
> index 3cf050ed220..16efc6134f1 100644
> --- a/src/amd/vulkan/radv_device.c
> +++ b/src/amd/vulkan/radv_device.c
> @@ -1370,17 +1370,9 @@ void radv_GetPhysicalDeviceProperties2(
>                 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT: {
>                         VkPhysicalDeviceSampleLocationsPropertiesEXT *properties =
>                                 (VkPhysicalDeviceSampleLocationsPropertiesEXT *)ext;
> -                       /* TODO: The ext is currently disabled because the
> -                        * driver needs to handle sample locations during
> -                        * layout transitions for depth/stencil surfaces and
> -                        * HTILE.
> -                        */
> -                       properties->sampleLocationSampleCounts = VK_SAMPLE_COUNT_1_BIT;
> -                       /*
>                         properties->sampleLocationSampleCounts = VK_SAMPLE_COUNT_2_BIT |
>                                                                  VK_SAMPLE_COUNT_4_BIT |
>                                                                  VK_SAMPLE_COUNT_8_BIT;
> -                       */
>                         properties->maxSampleLocationGridSize = (VkExtent2D){ 2 , 2 };
>                         properties->sampleLocationCoordinateRange[0] = 0.0f;
>                         properties->sampleLocationCoordinateRange[1] = 0.9375f;
> diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py
> index d6e9d5c034b..b14bd990e5f 100644
> --- a/src/amd/vulkan/radv_extensions.py
> +++ b/src/amd/vulkan/radv_extensions.py
> @@ -119,7 +119,7 @@ EXTENSIONS = [
>      Extension('VK_EXT_memory_priority',                   1, True),
>      Extension('VK_EXT_pci_bus_info',                      2, True),
>      Extension('VK_EXT_pipeline_creation_feedback',        1, True),
> -    Extension('VK_EXT_sample_locations',                  1, False),
> +    Extension('VK_EXT_sample_locations',                  1, True),
>      Extension('VK_EXT_sampler_filter_minmax',             1, 'device->rad_info.chip_class >= GFX7'),
>      Extension('VK_EXT_scalar_block_layout',               1, 'device->rad_info.chip_class >= GFX7'),
>      Extension('VK_EXT_shader_viewport_index_layer',       1, True),
> --
> 2.21.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list