[Mesa-dev] [PATCH] st/mesa: MAX_VARYING is the max supported number of patch varyings, not min

Ilia Mirkin imirkin at alum.mit.edu
Thu Jan 26 03:36:19 UTC 2017


This fixes
GL45-CTS.tessellation_shader.tessellation_shader_tessellation.max_in_out_attributes
likely among others on nouveau. We only support 30 patch varyings (as 2
vec4 slots end up being used for tess level settings), but were getting
32 exposed.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---
 src/mesa/state_tracker/st_extensions.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 5ccc5d9..3154e9c 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -348,7 +348,7 @@ void st_init_limits(struct pipe_screen *screen,
    c->MaxGeometryTotalOutputComponents =
       screen->get_param(screen, PIPE_CAP_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS);
    c->MaxTessPatchComponents =
-      MAX2(screen->get_param(screen, PIPE_CAP_MAX_SHADER_PATCH_VARYINGS),
+      MIN2(screen->get_param(screen, PIPE_CAP_MAX_SHADER_PATCH_VARYINGS),
            MAX_VARYING) * 4;
 
    c->MinProgramTexelOffset =
-- 
2.10.2



More information about the mesa-dev mailing list