Re: [Piglit] [PATCH] glx-oml-sync-control-timing: Make test behavior more stable
On Mon, Jul 9, 2018 at 9:09 PM, Illia Iorin wrote: > The fourfold increase in the test failure condition > is due to its unstable work. The old condition was left, > but the test result was changed from fail to warn, added > fail condition. > Hi, can you clarify what the commit message wrt. "fourfold increase... due to its unstable work" means? I'd like to understand the observed issue better. thanks, -mario > Cc: Michel Dänzer > Cc: Emil Velikov > Signed-off-by: Illia Iorin > --- > tests/spec/glx_oml_sync_control/timing.c | 5 - > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/tests/spec/glx_oml_sync_control/timing.c > b/tests/spec/glx_oml_sync_control/timing.c > index ab7258940..6d810af52 100644 > --- a/tests/spec/glx_oml_sync_control/timing.c > +++ b/tests/spec/glx_oml_sync_control/timing.c > @@ -332,7 +332,10 @@ draw(Display *dpy) > " does not match glXGetMscRateOML %fus\n", > msc_wallclock_duration_stats.mean, > expected_msc_wallclock_duration); > - result = PIGLIT_FAIL; > + piglit_merge_result(&result, PIGLIT_WARN); > + if (fabs(expected_msc_wallclock_duration - > +msc_wallclock_duration_stats.mean) > 200) > + result = PIGLIT_FAIL; > } > } > > -- > 2.17.1 > > ___ > Piglit mailing list > Piglit@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/piglit ___ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit
[Piglit] [PATCH] glx-oml-sync-control-timing: Make test behavior more stable
The fourfold increase in the test failure condition is due to its unstable work. The old condition was left, but the test result was changed from fail to warn, added fail condition. Cc: Michel Dänzer Cc: Emil Velikov Signed-off-by: Illia Iorin --- tests/spec/glx_oml_sync_control/timing.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/spec/glx_oml_sync_control/timing.c b/tests/spec/glx_oml_sync_control/timing.c index ab7258940..6d810af52 100644 --- a/tests/spec/glx_oml_sync_control/timing.c +++ b/tests/spec/glx_oml_sync_control/timing.c @@ -332,7 +332,10 @@ draw(Display *dpy) " does not match glXGetMscRateOML %fus\n", msc_wallclock_duration_stats.mean, expected_msc_wallclock_duration); - result = PIGLIT_FAIL; + piglit_merge_result(&result, PIGLIT_WARN); + if (fabs(expected_msc_wallclock_duration - +msc_wallclock_duration_stats.mean) > 200) + result = PIGLIT_FAIL; } } -- 2.17.1 ___ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit
Re: [Piglit] [PATCH] Add a test for instanced GS inputs.
Hello, Thanks for review) Regards, Andrii. On Wed, Jun 27, 2018 at 6:18 AM, Timothy Arceri wrote: > On 22/06/18 18:36, andrii.simiklit wrote: > >> Hello, >> >> It would be great If somebody could take a look this test) >> This test against following bug: >> https://bugs.freedesktop.org/show_bug.cgi?id=96354 >> > > I've clean up the description, removed some trailing spaces and pushed > this test. > > Thanks! > > >> Regards, >> Andrii. >> >> On 05.06.18 16:33, Andrii Simiklit wrote: >> >> All of our other tests for instanced geometry shaders don't actually >>> transfer the vertices to the geometry shader >>> from the vertex shader using gl_Position. >>> This used to be broken with the i965 driver's in Mesa 12.1.0 >>> on revision d10ae20b9678f1a5b8a81716c68e612662665277. >>> This test should give us ability to detect >>> such kind of bugs like 96354 bug in future. >>> >>> Signed-off-by: Andrii Simiklit >>> --- >>> .../instanced-inputs-built-in-variable.shader_test | 68 >>> ++ >>> 1 file changed, 68 insertions(+) >>> create mode 100644 tests/spec/arb_gpu_shader5/exe >>> cution/instanced-inputs-built-in-variable.shader_test >>> >>> diff --git >>> a/tests/spec/arb_gpu_shader5/execution/instanced-inputs-built-in-variable.shader_test >>> b/tests/spec/arb_gpu_shader5/execution/instanced-inputs-built-in-variable.shader_test >>> >>> new file mode 100644 >>> index 000..86b2bbd >>> --- /dev/null >>> +++ >>> b/tests/spec/arb_gpu_shader5/execution/instanced-inputs-built-in-variable.shader_test >>> >>> @@ -0,0 +1,68 @@ >>> +#It seems as duplicate of the "instanced-inputs.shader_test" test but >>> it could not detect the bug 96354. >>> +#It could detect the 96354 bug if and only if vertices are transferred >>> +#from vertex shader into geometry shader through built-in variable >>> gl_Position. >>> +# >>> +#Specification permits us to do it "11.3.4.4 Geometry Shader Inputs: >>> +#Structure member gl_Position holds the per-vertex position, as >>> written >>> +#by the vertex shader to its built-in output variable gl_Position. >>> +#Note that writing to gl_Position from either the vertex or >>> geometry shader is >>> +#optional (also see section 7.1(“Built-In Variables”) of the OpenGL >>> Shading Language Specification)" >>> + >>> +[require] >>> +GL >= 2.0 >>> +GLSL >= 1.50 >>> +GL_ARB_gpu_shader5 >>> + >>> +[vertex shader] >>> +in vec4 vertex; >>> + >>> +void main() >>> +{ >>> + gl_Position = vertex; >>> +} >>> + >>> +[geometry shader] >>> +#extension GL_ARB_gpu_shader5 : require >>> +layout(triangles) in; >>> +layout(triangle_strip, max_vertices = 3) out; >>> +layout(invocations = 4) in; >>> + >>> +void main() >>> +{ >>> + vec2 offset; >>> + if (gl_InvocationID == 0) >>> + offset.xy = vec2(-0.5, -0.5); >>> + else if (gl_InvocationID == 1) >>> + offset.xy = vec2( 0.5, -0.5); >>> + else if (gl_InvocationID == 2) >>> + offset.xy = vec2(-0.5, 0.5); >>> + else if (gl_InvocationID == 3) >>> + offset.xy = vec2( 0.5, 0.5); >>> + >>> + for (int i = 0; i < 3; i++) { >>> + gl_Position = gl_in[i].gl_Position; >>> + gl_Position.xy += offset; >>> + EmitVertex(); >>> + } >>> +} >>> + >>> +[fragment shader] >>> +void main() >>> +{ >>> + gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0); >>> +} >>> + >>> +[vertex data] >>> +vertex/float/2 >>> +-0.5 -0.5 >>> + 0.5 -0.5 >>> +-0.5 0.0 >>> + 0.5 0.0 >>> +-0.5 0.5 >>> + 0.5 0.5 >>> + >>> +[test] >>> +clear color 0.0 0.0 0.0 0.0 >>> +clear >>> +draw arrays GL_TRIANGLE_STRIP 0 6 >>> +probe all rgba 0.0 1.0 0.0 1.0 >>> \ No newline at end of file >>> >> >> ___ >> Piglit mailing list >> Piglit@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/piglit >> > ___ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit
[Piglit] [PATCH v3] arb_blend_func_extended: Test dual src blending without second color output
Using fragment shader without second color output should not hang gpu when dual source blending is enabled. It hanged Intel gen8+ GPUs when discarding fragments and depth test being enabled. There is also safeguard against lack of second color output in radeonsi. v2: by Ilia Mirkin - Set supports_gl_compat_version = 30 - Moved drawing to piglit_display - Change drawing sequence to: clear red -> draw -> clear green v3: by Dylan Baker - Removed run_concurrent=False Signed-off-by: Danylo Piliaiev --- tests/opengl.py | 2 + .../execution/CMakeLists.gl.txt | 1 + .../execution/CMakeLists.gles3.txt| 1 + .../dual-src-blending-discard-without-src1.c | 126 ++ 4 files changed, 130 insertions(+) create mode 100644 tests/spec/arb_blend_func_extended/execution/dual-src-blending-discard-without-src1.c diff --git a/tests/opengl.py b/tests/opengl.py index 02110ff86..1b088b75f 100644 --- a/tests/opengl.py +++ b/tests/opengl.py @@ -4114,6 +4114,7 @@ with profile.test_list.group_manager( g(['arb_blend_func_extended-fbo-extended-blend']) g(['arb_blend_func_extended-fbo-extended-blend-explicit']) g(['arb_blend_func_extended-fbo-extended-blend-pattern']) +g(['arb_blend_func_extended-dual-src-blending-discard-without-src1']) g(['arb_blend_func_extended-blend-api_gles2']) g(['arb_blend_func_extended-builtins_gles2']) g(['arb_blend_func_extended-bindfragdataindexed-invalid-parameters_gles3']) @@ -4123,6 +4124,7 @@ with profile.test_list.group_manager( g(['arb_blend_func_extended-fbo-extended-blend-pattern_gles3']) g(['arb_blend_func_extended-fbo-extended-blend_gles3']) g(['arb_blend_func_extended-fbo-extended-blend-explicit_gles3']) +g(['arb_blend_func_extended-dual-src-blending-discard-without-src1_gles3']) with profile.test_list.group_manager( PiglitGLTest, diff --git a/tests/spec/arb_blend_func_extended/execution/CMakeLists.gl.txt b/tests/spec/arb_blend_func_extended/execution/CMakeLists.gl.txt index f48c352e1..09d45b72c 100644 --- a/tests/spec/arb_blend_func_extended/execution/CMakeLists.gl.txt +++ b/tests/spec/arb_blend_func_extended/execution/CMakeLists.gl.txt @@ -12,4 +12,5 @@ link_libraries ( piglit_add_executable (arb_blend_func_extended-fbo-extended-blend fbo-extended-blend.c) piglit_add_executable (arb_blend_func_extended-fbo-extended-blend-explicit fbo-extended-blend-explicit.c) piglit_add_executable (arb_blend_func_extended-fbo-extended-blend-pattern fbo-extended-blend-pattern.c) +piglit_add_executable (arb_blend_func_extended-dual-src-blending-discard-without-src1 dual-src-blending-discard-without-src1.c) # vim: ft=cmake: diff --git a/tests/spec/arb_blend_func_extended/execution/CMakeLists.gles3.txt b/tests/spec/arb_blend_func_extended/execution/CMakeLists.gles3.txt index a70e9fa5e..fd41622bd 100644 --- a/tests/spec/arb_blend_func_extended/execution/CMakeLists.gles3.txt +++ b/tests/spec/arb_blend_func_extended/execution/CMakeLists.gles3.txt @@ -3,4 +3,5 @@ link_libraries(piglitutil_${piglit_target_api}) piglit_add_executable (arb_blend_func_extended-fbo-extended-blend_${piglit_target_api} fbo-extended-blend.c) piglit_add_executable (arb_blend_func_extended-fbo-extended-blend-explicit_${piglit_target_api} fbo-extended-blend-explicit.c) piglit_add_executable (arb_blend_func_extended-fbo-extended-blend-pattern_${piglit_target_api} fbo-extended-blend-pattern.c) +piglit_add_executable (arb_blend_func_extended-dual-src-blending-discard-without-src1_${piglit_target_api} dual-src-blending-discard-without-src1.c) # vim: ft=cmake: diff --git a/tests/spec/arb_blend_func_extended/execution/dual-src-blending-discard-without-src1.c b/tests/spec/arb_blend_func_extended/execution/dual-src-blending-discard-without-src1.c new file mode 100644 index 0..a0a45cd79 --- /dev/null +++ b/tests/spec/arb_blend_func_extended/execution/dual-src-blending-discard-without-src1.c @@ -0,0 +1,126 @@ +/* Copyright © 2018 Danylo Piliaiev + * + * 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 (including the next + * paragraph) 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 + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM