Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package piglit for openSUSE:Factory checked 
in at 2025-02-19 15:59:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/piglit (Old)
 and      /work/SRC/openSUSE:Factory/.piglit.new.25061 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "piglit"

Wed Feb 19 15:59:32 2025 rev:28 rq:1246958 version:1~20250217

Changes:
--------
--- /work/SRC/openSUSE:Factory/piglit/piglit.changes    2025-01-15 
17:45:46.263067172 +0100
+++ /work/SRC/openSUSE:Factory/.piglit.new.25061/piglit.changes 2025-02-19 
16:00:30.408981475 +0100
@@ -1,0 +2,13 @@
+Wed Feb 19 08:20:11 UTC 2025 - Martin Pluskal <mplus...@suse.com>
+
+- Update to version 1~20250217:
+  * arb_direct_state_access: disable dithering
+  * arb_program_interface_query: set vs_input2[1][0] as valid name
+  * perf/pixel-rate: new pixel throughput microbenchmark
+  * OVR_multiview: another num_views validation test
+  * glx: don't fail test if the X server is inconsistent
+  * ovr_multiview: add some basic glsl tests
+  * arb_clear_texture: use floating point verification for format type GL_FLOAT
+  * glx: don't expect a glx error
+
+-------------------------------------------------------------------

Old:
----
  piglit-1~20250108.obscpio

New:
----
  piglit-1~20250217.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ piglit.spec ++++++
--- /var/tmp/diff_new_pack.cgtaxB/_old  2025-02-19 16:00:31.313019300 +0100
+++ /var/tmp/diff_new_pack.cgtaxB/_new  2025-02-19 16:00:31.313019300 +0100
@@ -26,7 +26,7 @@
 %bcond_without opengles
 %endif
 Name:           piglit
-Version:        1~20250108
+Version:        1~20250217
 Release:        0
 Summary:        OpenGL driver testing framework
 License:        MIT

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.cgtaxB/_old  2025-02-19 16:00:31.377021977 +0100
+++ /var/tmp/diff_new_pack.cgtaxB/_new  2025-02-19 16:00:31.381022145 +0100
@@ -7,6 +7,6 @@
                 <param 
name="url">https://gitlab.freedesktop.org/mesa/piglit</param>
               <param 
name="changesrevision">9f280db77074eb70cf9f5b4645799232ab9fe086</param></service><service
 name="tar_scm">
                 <param 
name="url">https://gitlab.freedesktop.org/mesa/piglit.git/</param>
-              <param 
name="changesrevision">631b72944f56e688f56a08d26c8a9f3988801a08</param></service></servicedata>
+              <param 
name="changesrevision">a8821ad30633ac892b557f7b9d2708908674f5d4</param></service></servicedata>
 (No newline at EOF)
 


++++++ piglit-1~20250108.obscpio -> piglit-1~20250217.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/piglit-1~20250108/tests/perf/CMakeLists.gl.txt 
new/piglit-1~20250217/tests/perf/CMakeLists.gl.txt
--- old/piglit-1~20250108/tests/perf/CMakeLists.gl.txt  2025-01-08 
20:18:27.000000000 +0100
+++ new/piglit-1~20250217/tests/perf/CMakeLists.gl.txt  2025-02-17 
07:25:02.000000000 +0100
@@ -16,6 +16,7 @@
 piglit_add_executable (fill fill.c common.c)
 piglit_add_executable (genmipmap genmipmap.c common.c)
 piglit_add_executable (pbobench pbobench.c common.c)
+piglit_add_executable (pixel-rate pixel-rate.c common.c)
 piglit_add_executable (readpixels readpixels.c common.c)
 piglit_add_executable (shader-io-rate shader-io-rate.c common.c)
 piglit_add_executable (teximage teximage.c common.c)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/piglit-1~20250108/tests/perf/pixel-rate.c 
new/piglit-1~20250217/tests/perf/pixel-rate.c
--- old/piglit-1~20250108/tests/perf/pixel-rate.c       1970-01-01 
01:00:00.000000000 +0100
+++ new/piglit-1~20250217/tests/perf/pixel-rate.c       2025-02-17 
07:25:02.000000000 +0100
@@ -0,0 +1,279 @@
+/*
+ * Copyright (C) 2025  Advanced Micro Devices, Inc.
+ * All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * VMWARE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/**
+ * Measure pixel throughput with different numbers of fragment shader inputs,
+ * qualifiers, and system values.
+ */
+
+#include "common.h"
+#include <stdbool.h>
+#undef NDEBUG
+#include <assert.h>
+#include "piglit-util-gl.h"
+
+/* this must be a power of two to prevent precision issues */
+#define WINDOW_SIZE 1024
+
+PIGLIT_GL_TEST_CONFIG_BEGIN
+
+       config.supports_gl_compat_version = 10;
+       config.window_width = WINDOW_SIZE;
+       config.window_height = WINDOW_SIZE;
+       config.window_visual = PIGLIT_GL_VISUAL_RGBA | PIGLIT_GL_VISUAL_DOUBLE;
+
+PIGLIT_GL_TEST_CONFIG_END
+
+static unsigned gpu_freq_mhz;
+
+typedef struct {
+       const char *name;
+       bool sample_shading;
+       const char *vs;
+       const char *fs;
+       GLuint prog;
+} prog_info;
+
+#define VS_SET_POSITION "   gl_Position = vec4(gl_VertexID % 2 == 1 ? 1.0 : 
-1.0, gl_VertexID / 2 == 1 ? 1.0 : -1.0, 0.0, 1.0);\n"
+
+#define VS_POS \
+       "#version 400\n" \
+       "void main() {\n" \
+       VS_SET_POSITION \
+       "}\n"
+
+#define FS_OUT(v) \
+       "#version 400\n" \
+       "void main() {\n" \
+       "       gl_FragColor = vec4(" v ");\n" \
+       "}"
+
+#define INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
sysval, sysval_code) \
+       {#n " inputs " qual linear sysval, \
+       sample_shading, \
+       \
+       "#version 400\n" \
+       "noperspective out vec4 varnp;\n" \
+       qual_code " out vec4 var["#n"];\n" \
+       "void main() {\n" \
+       "       float id = float(gl_VertexID);\n" \
+       "       varnp = vec4(id, id*id, id*id*id, id*id*id*id);\n" \
+       "       var[0].x = id;\n" \
+       "       for (int i = 1; i < ("#n" - (" linear_code " ? 1 : 0)) * 4; 
i++) var[i / 4][i % 4] = var[(i - 1) / 4][(i - 1) % 4] * id;\n" \
+       VS_SET_POSITION \
+       "}\n", \
+       \
+       "#version 400\n" \
+       "noperspective in vec4 varnp;\n" \
+       qual_code " in vec4 var["#n"];\n" /* the last one is unused, it will be 
eliminated by the GLSL compiler */ \
+       "void main() {\n" \
+       "       vec4 v = " linear_code " ? varnp : vec4(1.0);\n" \
+       "       for (int i = 0; i < ("#n" - (" linear_code " ? 1 : 0)); i++) v 
*= var[i];\n" \
+       "       gl_FragColor = v + " sysval_code ";\n" \
+       "}\n"}
+
+#define INPUTS_Q(n, sample_shading, qual, qual_code, linear, linear_code) \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code,, 
"vec4(0.0)"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+Face", "vec4(gl_FrontFacing)"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+SampleMask", "vec4(gl_SampleMaskIn[0])"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.x", "gl_FragCoord.xxxx"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.y", "gl_FragCoord.yyyy"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.z", "gl_FragCoord.zzzz"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.w", "gl_FragCoord.wwww"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xy", "gl_FragCoord.xyyy"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.zw", "gl_FragCoord.zwww"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xyz", "gl_FragCoord.xyzz"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xyw", "gl_FragCoord.xyww"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xyzw", "gl_FragCoord"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xy+Face", "gl_FragCoord.xyyy + vec4(gl_FrontFacing)"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xy+SampleMask", "gl_FragCoord.xyyy + vec4(gl_SampleMaskIn[0])"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xy+Face+SampleMask", "gl_FragCoord.xyyy + vec4(gl_FrontFacing) + 
vec4(gl_SampleMaskIn[0])"), \
+       INPUTS_PROG(n, sample_shading, qual, qual_code, linear, linear_code, 
"+FragPos.xyzw+Face+SampleMask", "gl_FragCoord + vec4(gl_FrontFacing) + 
vec4(gl_SampleMaskIn[0])"), \
+       INPUTS_PROG(n, true, qual, qual_code, linear, linear_code, "+SampleID", 
"vec4(gl_SampleID)"), \
+       INPUTS_PROG(n, true, qual, qual_code, linear, linear_code, 
"+SampleID+FragPos.xy", "vec4(gl_SampleID) + gl_FragCoord.xyyy"), \
+       INPUTS_PROG(n, true, qual, qual_code, linear, linear_code, 
"+SampleID+SampleMask", "vec4(gl_SampleID) + vec4(gl_SampleMaskIn[0])"), \
+       INPUTS_PROG(n, true, qual, qual_code, linear, linear_code, 
"+SampleID+FragPos.xyzw+Face+SampleMask", "vec4(gl_SampleID) + gl_FragCoord + 
vec4(gl_FrontFacing) + vec4(gl_SampleMaskIn[0])")
+
+#define INPUT1(n) \
+       INPUTS_Q(n, false, "flat", "flat", "", "false"), \
+       INPUTS_Q(n, false, "persp",, "", "false"), \
+       INPUTS_Q(n, true, "sample", "sample", "", "false")
+
+#define INPUTS(n) \
+       INPUTS_Q(n, false, "persp",, "", "false"), \
+       INPUTS_Q(n, false, "persp",, "+linear", "true"), \
+       INPUTS_Q(n, true, "sample", "sample", "", "false"), \
+       INPUTS_Q(n, true, "sample", "sample", "+linear", "true")
+
+static prog_info progs[] = {
+       {"Empty", false, VS_POS,
+        "#version 400\n"
+        "void main() {\n"
+        "}"},
+
+       {"Empty+discard", false, VS_POS,
+        "#version 400\n"
+        "void main() {\n"
+        "      discard;\n"
+        "}"},
+
+       {"Const fill", false, VS_POS, FS_OUT("0.5, 0.4, 0.3, 0.2")},
+
+       {"Face", false, VS_POS, FS_OUT("gl_FrontFacing")},
+       {"SampleMask", false, VS_POS, FS_OUT("gl_SampleMaskIn[0]")},
+       {"FragPos.x", false, VS_POS, FS_OUT("gl_FragCoord.x")},
+       {"FragPos.y", false, VS_POS, FS_OUT("gl_FragCoord.y")},
+       {"FragPos.z", false, VS_POS, FS_OUT("gl_FragCoord.z")},
+       {"FragPos.w", false, VS_POS, FS_OUT("gl_FragCoord.w")},
+       {"FragPos.xy", false, VS_POS, FS_OUT("gl_FragCoord.xyyy")},
+       {"FragPos.zw", false, VS_POS, FS_OUT("gl_FragCoord.zwww")},
+       {"FragPos.xyz", false, VS_POS, FS_OUT("gl_FragCoord.xyzz")},
+       {"FragPos.xyw", false, VS_POS, FS_OUT("gl_FragCoord.xyww")},
+       {"FragPos.xyzw", false, VS_POS, FS_OUT("gl_FragCoord")},
+       {"FragPos.xy+Face", false, VS_POS, FS_OUT("gl_FragCoord.xyyy + 
vec4(gl_FrontFacing)")},
+       {"FragPos.xy+SampleMask", false, VS_POS, FS_OUT("gl_FragCoord.xyyy + 
vec4(gl_SampleMaskIn[0])")},
+       {"FragPos.xy+Face+SampleMask", false, VS_POS, FS_OUT("gl_FragCoord.xyyy 
+ vec4(gl_FrontFacing) + vec4(gl_SampleMaskIn[0])")},
+       {"FragPos.xyzw+Face+SampleMask", false, VS_POS, FS_OUT("gl_FragCoord + 
vec4(gl_FrontFacing) + vec4(gl_SampleMaskIn[0])")},
+       {"SampleID", true, VS_POS, FS_OUT("vec4(gl_SampleID)")},
+       {"SamplePos", true, VS_POS, FS_OUT("gl_SamplePosition.xyyy")},
+       {"SampleID+SamplePos", true, VS_POS, FS_OUT("vec4(gl_SampleID) + 
gl_SamplePosition.xyyy")},
+       {"SampleID+SampleMask", true, VS_POS, FS_OUT("vec4(gl_SampleID) + 
vec4(gl_SampleMaskIn[0])")},
+       {"SampleID+SamplePos+SampleMask", true, VS_POS, 
FS_OUT("vec4(gl_SampleID) + gl_SamplePosition.xyyy + 
vec4(gl_SampleMaskIn[0])")},
+       {"SampleID+FragPos.xy", true, VS_POS, FS_OUT("vec4(gl_SampleID) + 
gl_FragCoord.xyyy")},
+       {"SampleID+FragPos.z", true, VS_POS, FS_OUT("vec4(gl_SampleID) + 
gl_FragCoord.zzzz")},
+       {"SampleID+FragPos.xyzw", true, VS_POS, FS_OUT("vec4(gl_SampleID) + 
gl_FragCoord")},
+       {"SampleID+SamplePos+SampleMask+FragPos.xyzw+Face", true, VS_POS, 
FS_OUT("vec4(gl_SampleID) + gl_SamplePosition.xyyy + vec4(gl_SampleMaskIn[0]) + 
gl_FragCoord.xyzw + vec4(gl_FrontFacing)")},
+
+       INPUT1(1),
+       INPUTS(2),
+       INPUTS(3),
+       INPUTS(4),
+       INPUTS(5),
+       INPUTS(6),
+       INPUTS(7),
+       INPUTS(8),
+};
+
+typedef struct {
+       const char *name;
+       GLenum format;
+       unsigned num_samples;
+       GLuint fbo;
+} fb_info;
+
+static fb_info fbs[] = {
+       {"RGBA8 1s", GL_RGBA8, 0},
+       {"RGBA8 4s", GL_RGBA8, 4},
+       {"RGBA16F 1s", GL_RGBA16F, 0},
+       {"RGBA16F 4s", GL_RGBA16F, 4},
+};
+
+void
+piglit_init(int argc, char **argv)
+{
+       for (unsigned i = 1; i < argc; i++) {
+               if (strncmp(argv[i], "-freq=", 6) == 0)
+                       sscanf(argv[i] + 6, "%u", &gpu_freq_mhz);
+       }
+
+       piglit_require_gl_version(40);
+
+       for (unsigned i = 0; i < ARRAY_SIZE(progs); i++)
+               progs[i].prog = piglit_build_simple_program(progs[i].vs, 
progs[i].fs);
+
+       for (unsigned i = 0; i < ARRAY_SIZE(fbs); i++) {
+               GLuint rb;
+               glGenRenderbuffers(1, &rb);
+               glBindRenderbuffer(GL_RENDERBUFFER, rb);
+               glRenderbufferStorageMultisample(GL_RENDERBUFFER, 
fbs[i].num_samples,
+                                                fbs[i].format, 1024, 1024);
+
+               glGenFramebuffers(1, &fbs[i].fbo);
+               glBindFramebuffer(GL_FRAMEBUFFER, fbs[i].fbo);
+               glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0,
+                                         GL_RENDERBUFFER, rb);
+               bool status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
+               assert(status);
+       }
+}
+
+static void
+run_draw(unsigned iterations)
+{
+       for (unsigned i = 0; i < iterations; i++)
+               glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
+}
+
+enum piglit_result
+piglit_display(void)
+{
+       glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+
+       if (getenv("TEST")) {
+               glUseProgram(progs[1].prog);
+               run_draw(1);
+               piglit_swap_buffers();
+               return PIGLIT_PASS;
+       }
+
+       printf("  %-60s, %s\n", "Fragment shader", gpu_freq_mhz ? 
"Samples/clock," : "GSamples/second");
+
+       printf("%*s", 62, "");
+       for (unsigned j = 0; j < ARRAY_SIZE(fbs); j++) {
+               printf(",%10s", fbs[j].name);
+       }
+       puts("");
+
+       /* Warm up. */
+       glUseProgram(progs[0].prog);
+       perf_measure_gpu_rate(run_draw, 0.01);
+
+       for (unsigned i = 0; i < ARRAY_SIZE(progs); i++) {
+               printf("  %-60s", progs[i].name);
+               glUseProgram(progs[i].prog);
+
+               for (unsigned j = 0; j < ARRAY_SIZE(fbs); j++) {
+                       if (progs[i].sample_shading && fbs[j].num_samples <= 1) 
{
+                               printf(",       n/a");
+                               fflush(stdout);
+                               continue;
+                       }
+                       glBindFramebuffer(GL_FRAMEBUFFER, fbs[j].fbo);
+
+                       double rate = perf_measure_gpu_rate(run_draw, 0.01);
+                       rate *= (double)piglit_width * piglit_height *
+                               (progs[i].sample_shading ? fbs[j].num_samples : 
1);
+
+                       if (gpu_freq_mhz) {
+                               rate /= gpu_freq_mhz * 1000000.0;
+                               printf(",%10.2f", rate);
+                       } else {
+                               printf(",%10.2f", rate / 1000000000);
+                       }
+                       fflush(stdout);
+               }
+               puts("");
+       }
+
+       exit(0);
+       return PIGLIT_SKIP;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/arb_clear_texture/common.c 
new/piglit-1~20250217/tests/spec/arb_clear_texture/common.c
--- old/piglit-1~20250108/tests/spec/arb_clear_texture/common.c 2025-01-08 
20:18:27.000000000 +0100
+++ new/piglit-1~20250217/tests/spec/arb_clear_texture/common.c 2025-02-17 
07:25:02.000000000 +0100
@@ -176,7 +176,7 @@
 static bool
 check_texels_partial_clear(GLenum format, GLenum type, GLsizei texelSize)
 {
-       const bool is_float = (format == GL_DEPTH_COMPONENT);
+       const bool is_float = (format == GL_DEPTH_COMPONENT) || (type == 
GL_FLOAT);
        GLubyte *data, *p;
        bool success = true;
        int x, y;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/arb_direct_state_access/gettextureimage-formats.c
 
new/piglit-1~20250217/tests/spec/arb_direct_state_access/gettextureimage-formats.c
--- 
old/piglit-1~20250108/tests/spec/arb_direct_state_access/gettextureimage-formats.c
  2025-01-08 20:18:27.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/arb_direct_state_access/gettextureimage-formats.c
  2025-02-17 07:25:02.000000000 +0100
@@ -529,6 +529,8 @@
                }
        }
 
+       glDisable(GL_DITHER);
+
        glGenTextures(1, &texture_id);
        glBindTexture(GL_TEXTURE_2D, texture_id);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/arb_program_interface_query/getprogramresourceindex.c
 
new/piglit-1~20250217/tests/spec/arb_program_interface_query/getprogramresourceindex.c
--- 
old/piglit-1~20250108/tests/spec/arb_program_interface_query/getprogramresourceindex.c
      2025-01-08 20:18:27.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/arb_program_interface_query/getprogramresourceindex.c
      2025-02-17 07:25:02.000000000 +0100
@@ -167,7 +167,7 @@
        {   vs_aofa,              GL_PROGRAM_INPUT,          "vs_input2", 
false, -1, GL_NO_ERROR },
        {   vs_aofa,              GL_PROGRAM_INPUT,       "vs_input2[0]",  
true, -1, GL_NO_ERROR },
        {   vs_aofa,              GL_PROGRAM_INPUT,    "vs_input2[0][0]",  
true, -1, GL_NO_ERROR },
-       {   vs_aofa,              GL_PROGRAM_INPUT,    "vs_input2[1][0]", 
false, -1, GL_NO_ERROR },
+       {   vs_aofa,              GL_PROGRAM_INPUT,    "vs_input2[1][0]",  
true, -1, GL_NO_ERROR },
        {   vs_aofa,              GL_PROGRAM_INPUT,    "vs_input2[0][1]", 
false, -1, GL_NO_ERROR },
        {    vs_sub,          GL_VERTEX_SUBROUTINE,                "vss",  
true, -1, GL_NO_ERROR },
        {    vs_sub,          GL_VERTEX_SUBROUTINE,               "vss2",  
true, -1, GL_NO_ERROR },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/glx_arb_create_context/no-error.c 
new/piglit-1~20250217/tests/spec/glx_arb_create_context/no-error.c
--- old/piglit-1~20250108/tests/spec/glx_arb_create_context/no-error.c  
2025-01-08 20:18:27.000000000 +0100
+++ new/piglit-1~20250217/tests/spec/glx_arb_create_context/no-error.c  
2025-02-17 07:25:02.000000000 +0100
@@ -57,43 +57,40 @@
        ctx = glXCreateContextAttribsARB(dpy, fbconfig, NULL, True, attribs);
        XSync(dpy, 0);
 
-       if (glx_error_code != -1) {
-               if ((debug || robust)) {
-                       /* KHR_no_error doesn't allow the no error mode to be 
enabled
-                        * with KHR_debug or ARB_robustness, so context 
creation is
-                        * expected to fail in these cases.
-                        *
-                        * From the ARB_create_context_no_error spec:
-                        *
-                        *    "BadMatch is generated if the 
GLX_CONTEXT_OPENGL_NO_ERROR_ARB is TRUE at
-                        *    the same time as a debug or robustness context is 
specified."
-                        */
-                       if (!validate_glx_error_code(BadMatch, -1)) {
-                               printf("error: incorrect context creation error 
code\n");
-                               result = PIGLIT_FAIL;
-                               goto done;
-                       }
-
-                       printf("info: context creation failed (expected)\n");
-                       result = PIGLIT_PASS;
+       /* KHR_no_error doesn't allow the no error mode to be enabled
+        * with KHR_debug or ARB_robustness, so context creation is
+        * expected to fail in these cases.
+        *
+        * From the ARB_create_context_no_error spec:
+        *
+        *    "BadMatch is generated if the GLX_CONTEXT_OPENGL_NO_ERROR_ARB is 
TRUE at
+        *    the same time as a debug or robustness context is specified."
+        */
+       if (debug || robust) {
+               if (ctx) {
+                       printf("error: context creation should have failed\n");
+                       result = PIGLIT_FAIL;
                        goto done;
                }
-
-               /* Most likely the API/version is not supported. */
-               result = PIGLIT_SKIP;
-               goto done;
-       }
-       if (ctx == NULL) {
-               printf("error: context creation failed\n");
-               result = PIGLIT_FAIL;
-               goto done;
-       }
-
-       if (!glXMakeContextCurrent(dpy, glxWin, glxWin, ctx)) {
-               printf("error: created OpenGL context, but could not make it "
-                      "current\n");
-               result = PIGLIT_FAIL;
+               if (!validate_glx_error_code(BadMatch, -1)) {
+                       printf("error: incorrect context creation error 
code\n");
+                       result = PIGLIT_FAIL;
+                       goto done;
+               }
+               result = PIGLIT_PASS;
                goto done;
+       } else {
+               if (!ctx) {
+                       printf("error: context creation failed\n");
+                       result = PIGLIT_FAIL;
+                       goto done;
+               }
+               if (!glXMakeContextCurrent(dpy, glxWin, glxWin, ctx)) {
+                       printf("error: created OpenGL context, but could not 
make it "
+                              "current\n");
+                       result = PIGLIT_FAIL;
+                       goto done;
+               }
        }
 
        if (!is_dispatch_init) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration-mismatch.vert
 
new/piglit-1~20250217/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration-mismatch.vert
--- 
old/piglit-1~20250108/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration-mismatch.vert
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration-mismatch.vert
      2025-02-17 07:25:02.000000000 +0100
@@ -0,0 +1,23 @@
+// [config]
+// expect_result: fail
+// glsl_version: 1.30
+// require_extensions: GL_OVR_multiview
+// check_link: false
+// [end config]
+//
+// From the OVR_multiview spec:
+//
+//    "If this layout qualifier is declared more than once in the same shader,
+//    all those declarations must set num_views to the same value; otherwise a
+//    compile-time error results."
+//
+
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 3) in;
+layout(num_views = 2) in;
+
+void main() {
+   gl_Position = vec4(1.0);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration.vert
 
new/piglit-1~20250217/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration.vert
--- 
old/piglit-1~20250108/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration.vert
       1970-01-01 01:00:00.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/ovr_multiview/compiler/multiple-num-views-in-single-declaration.vert
       2025-02-17 07:25:02.000000000 +0100
@@ -0,0 +1,23 @@
+// [config]
+// expect_result: pass
+// glsl_version: 1.30
+// require_extensions: GL_OVR_multiview
+// check_link: false
+// [end config]
+//
+// From the OVR_multiview spec:
+//
+//    "If this layout qualifier is declared more than once in the same shader,
+//    all those declarations must set num_views to the same value; otherwise a
+//    compile-time error results."
+//
+
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 3) in;
+layout(num_views = 3) in;
+
+void main() {
+   gl_Position = vec4(1.0);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/ovr_multiview/linker/match_viewcount.shader_test
 
new/piglit-1~20250217/tests/spec/ovr_multiview/linker/match_viewcount.shader_test
--- 
old/piglit-1~20250108/tests/spec/ovr_multiview/linker/match_viewcount.shader_test
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/ovr_multiview/linker/match_viewcount.shader_test
   2025-02-17 07:25:02.000000000 +0100
@@ -0,0 +1,26 @@
+# If multiple vertex shaders attached to a single program
+# object declare num_views, the declarations must be
+# identical; otherwise a link-time error results.
+
+[require]
+GLSL >= 1.30
+GL_OVR_multiview
+
+[vertex shader]
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 2) in;
+
+[vertex shader]
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 2) in;
+
+void main() {
+   gl_Position = vec4(1.0);
+}
+
+[test]
+link success
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/ovr_multiview/linker/mismatch_viewcount.shader_test
 
new/piglit-1~20250217/tests/spec/ovr_multiview/linker/mismatch_viewcount.shader_test
--- 
old/piglit-1~20250108/tests/spec/ovr_multiview/linker/mismatch_viewcount.shader_test
        1970-01-01 01:00:00.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/ovr_multiview/linker/mismatch_viewcount.shader_test
        2025-02-17 07:25:02.000000000 +0100
@@ -0,0 +1,26 @@
+# If multiple vertex shaders attached to a single program
+# object declare num_views, the declarations must be
+# identical; otherwise a link-time error results.
+
+[require]
+GLSL >= 1.30
+GL_OVR_multiview
+
+[vertex shader]
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 2) in;
+
+[vertex shader]
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 3) in;
+
+void main() {
+   gl_Position = vec4(1.0);
+}
+
+[test]
+link error
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/piglit-1~20250108/tests/spec/ovr_multiview/linker/multiple_shaders_single_num_view_declaration.shader_test
 
new/piglit-1~20250217/tests/spec/ovr_multiview/linker/multiple_shaders_single_num_view_declaration.shader_test
--- 
old/piglit-1~20250108/tests/spec/ovr_multiview/linker/multiple_shaders_single_num_view_declaration.shader_test
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/piglit-1~20250217/tests/spec/ovr_multiview/linker/multiple_shaders_single_num_view_declaration.shader_test
      2025-02-17 07:25:02.000000000 +0100
@@ -0,0 +1,19 @@
+[require]
+GLSL >= 1.30
+GL_OVR_multiview
+
+[vertex shader]
+#version 130
+#extension GL_OVR_multiview : require
+
+layout(num_views = 2) in;
+
+[vertex shader]
+#version 130
+
+void main() {
+   gl_Position = vec4(1.0);
+}
+
+[test]
+link success
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/piglit-1~20250108/tests/util/piglit-glx-util.c 
new/piglit-1~20250217/tests/util/piglit-glx-util.c
--- old/piglit-1~20250108/tests/util/piglit-glx-util.c  2025-01-08 
20:18:27.000000000 +0100
+++ new/piglit-1~20250217/tests/util/piglit-glx-util.c  2025-02-17 
07:25:02.000000000 +0100
@@ -284,6 +284,7 @@
        int i, j;
        bool any_fail = false;
        bool any_pass = false;
+       bool any_warn = false;
        Window root_win;
         int *depths, n_depths;
 
@@ -330,7 +331,7 @@
                     fprintf(stderr, "fbconfig %d has GLX_PIXMAP_BIT but there "
                                     "is no pixmap format for depth %d, this "
                                     "is a server bug\n", id, depth);
-                    any_fail = true;
+                    any_warn = true;
                     continue;
                 }
 
@@ -357,6 +358,8 @@
 
        if (any_fail)
                return PIGLIT_FAIL;
+       else if (any_warn)
+               return PIGLIT_WARN;
        else if (any_pass)
                return PIGLIT_PASS;
        else

++++++ piglit.obsinfo ++++++
--- /var/tmp/diff_new_pack.cgtaxB/_old  2025-02-19 16:00:35.085177126 +0100
+++ /var/tmp/diff_new_pack.cgtaxB/_new  2025-02-19 16:00:35.089177294 +0100
@@ -1,5 +1,5 @@
 name: piglit
-version: 1~20250108
-mtime: 1736363907
-commit: 631b72944f56e688f56a08d26c8a9f3988801a08
+version: 1~20250217
+mtime: 1739773502
+commit: a8821ad30633ac892b557f7b9d2708908674f5d4
 

Reply via email to