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

2019-06-04 Thread Bas Nieuwenhuizen
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
 wrote:
>
> Signed-off-by: Samuel Pitoiset 
> ---
>  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@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

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

2019-05-30 Thread Samuel Pitoiset
Signed-off-by: Samuel Pitoiset 
---
 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@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev