<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [OpenGL CTS] KHR-GL46.compute_shader.resource-texture sometimes fails in full run"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=104153#c3">Comment # 3</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [OpenGL CTS] KHR-GL46.compute_shader.resource-texture sometimes fails in full run"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=104153">bug 104153</a>
              from <span class="vcard"><a class="email" href="mailto:mark.a.janes@intel.com" title="Mark Janes <mark.a.janes@intel.com>"> <span class="fn">Mark Janes</span></a>
</span></b>
        <pre>KHR-GL46.compute_shader.resource-texture.kblm64 (from KHR-GL46)
Failing for the past 1 build (Since Failed#11521 )
Took 0.13 sec.
Standard Output

Compute Shader resources - Textures
Verify that texture access works correctly in CS.
1. Create CS which uses all sampler types (sampler1D, sampler2D, sampler3D,
sampler2DRect,
    sampler1DArray, sampler2DArray, samplerBuffer, sampler2DMS,
sampler2DMSArray).
2. Dispatch CS with DispatchCompute and DispatchComputeIndirect commands.
3. Sample each texture and write sampled value to SSBO.
4. Verify SSBO content.
5. Repeat for different texture and CS work sizes.
Everything works as expected.
glCreateProgram();
// 2791 returned
glCreateShader(GL_COMPUTE_SHADER);
// 2792 returned
glAttachShader(2791, 2792);
glDeleteShader(2792);
glShaderSource(2792, 2, 0x00007ffd0d4be1a0, 0x0000000000000000);
glCompileShader(2792);
glLinkProgram(2791);
glGetProgramiv(2791, GL_LINK_STATUS, 0x00007ffd0d4bd264);
// params = { 1 }
glUseProgram(2791);
glGetUniformLocation(2791, g_sampler0);
// 0 returned
glUniform1i(0, 0);
glGetUniformLocation(2791, g_sampler1);
// 1 returned
glUniform1i(1, 1);
glGetUniformLocation(2791, g_sampler2);
// 2 returned
glUniform1i(2, 2);
glGetUniformLocation(2791, g_sampler3);
// 3 returned
glUniform1i(3, 3);
glGetUniformLocation(2791, g_sampler4);
// 4 returned
glUniform1i(4, 4);
glGetUniformLocation(2791, g_sampler5);
// 5 returned
glUniform1i(5, 5);
glGetUniformLocation(2791, g_sampler6);
// 6 returned
glUniform1i(6, 6);
glGetUniformLocation(2791, g_sampler7);
// 7 returned
glUniform1i(7, 7);
glGetUniformLocation(2791, g_sampler8);
// 8 returned
glUniform1i(8, 8);
glUseProgram(0);
glGenBuffers(1, 0x000055cc8d6eab1c);
// buffers = { 1215 }
glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 0, 1215);
glBufferData(GL_SHADER_STORAGE_BUFFER, 73728, 0x55cc8c221c90, GL_DYNAMIC_DRAW);
glBindBuffer(GL_SHADER_STORAGE_BUFFER, 0);
glGenTextures(9, 0x000055cc8d6eab20);
// textures = { 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163 }
glGenBuffers(1, 0x000055cc8d6eab44);
// buffers = { 1216 }
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_1D, 1155);
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage1D(GL_TEXTURE_1D, 0, GL_RGBA32F, 32, 0, GL_RGBA, GL_FLOAT,
0x55cc8c74f9c0);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, 1156);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, 32, 4, 0, GL_RGBA, GL_FLOAT,
0x55cc8c74f9c0);
glActiveTexture(GL_TEXTURE2);
glBindTexture(GL_TEXTURE_3D, 1157);
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage3D(GL_TEXTURE_3D, 0, GL_RGBA32F, 32, 4, 4, 0, GL_RGBA, GL_FLOAT,
0x55cc8c74f9c0);
glActiveTexture(GL_TEXTURE3);
glBindTexture(0x84f5, 1158);
glTexParameteri(0x84f5, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(0x84f5, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(0x84f5, 0, GL_RGBA32F, 32, 4, 0, GL_RGBA, GL_FLOAT,
0x55cc8c74f9c0);
glActiveTexture(GL_TEXTURE4);
glBindTexture(0x8c18, 1159);
glTexParameteri(0x8c18, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(0x8c18, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(0x8c18, 0, GL_RGBA32F, 32, 4, 0, GL_RGBA, GL_FLOAT,
0x55cc8c74f9c0);
glActiveTexture(GL_TEXTURE5);
glBindTexture(GL_TEXTURE_2D_ARRAY, 1160);
glTexParameteri(GL_TEXTURE_2D_ARRAY, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D_ARRAY, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage3D(GL_TEXTURE_2D_ARRAY, 0, GL_RGBA32F, 32, 4, 4, 0, GL_RGBA,
GL_FLOAT, 0x55cc8c74f9c0);
glActiveTexture(GL_TEXTURE6);
glBindBuffer(GL_TEXTURE_BUFFER, 1216);
glBufferData(GL_TEXTURE_BUFFER, 8192, 0x55cc8c74f9c0, GL_DYNAMIC_DRAW);
glBindBuffer(GL_TEXTURE_BUFFER, 0);
glBindTexture(GL_TEXTURE_BUFFER, 1161);
glTexBuffer(GL_TEXTURE_BUFFER, GL_RGBA32F, 1216);
glActiveTexture(GL_TEXTURE7);
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, 1162);
glTexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, 4, GL_RGBA32F, 32, 4,
GL_FALSE);
glActiveTexture(GL_TEXTURE8);
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE_ARRAY, 1163);
glTexImage3DMultisample(0x00009102, 4, 0x00008814, 32, 4, 4, GL_FALSE);
glGenFramebuffers(1, 0x00007ffd0d4be21c);
// framebuffers = { 209 }
glBindFramebuffer(GL_FRAMEBUFFER, 209);
glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, 1162, 0);
glClearBufferfv(GL_COLOR, 0, 0x00007ffd0d4be2c0);
glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, 1163, 0);
glClearBufferfv(GL_COLOR, 0, 0x00007ffd0d4be2d0);
glDeleteFramebuffers(1, { 209 });
glUseProgram(2791);
glDispatchCompute(8, 1, 1);
glBindBuffer(GL_SHADER_STORAGE_BUFFER, 1215);
glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT);
glGetBufferSubData(0x000090d2, 0, 73728, 0x55cc8c221c90);
glDeleteProgram(2791);
glCreateProgram();
// 2793 returned
glCreateShader(GL_COMPUTE_SHADER);
// 2794 returned
glAttachShader(2793, 2794);
glDeleteShader(2794);
glShaderSource(2794, 2, 0x00007ffd0d4be1a0, 0x0000000000000000);
glCompileShader(2794);
glLinkProgram(2793);
glGetProgramiv(2793, GL_LINK_STATUS, 0x00007ffd0d4bd264);
// params = { 1 }
glUseProgram(2793);
glGetUniformLocation(2793, g_sampler0);
// 0 returned
glUniform1i(0, 0);
glGetUniformLocation(2793, g_sampler1);
// 1 returned
glUniform1i(1, 1);
glGetUniformLocation(2793, g_sampler2);
// 2 returned
glUniform1i(2, 2);
glGetUniformLocation(2793, g_sampler3);
// 3 returned
glUniform1i(3, 3);
glGetUniformLocation(2793, g_sampler4);
// 4 returned
glUniform1i(4, 4);
glGetUniformLocation(2793, g_sampler5);
// 5 returned
glUniform1i(5, 5);
glGetUniformLocation(2793, g_sampler6);
// 6 returned
glUniform1i(6, 6);
glGetUniformLocation(2793, g_sampler7);
// 7 returned
glUniform1i(7, 7);
glGetUniformLocation(2793, g_sampler8);
// 8 returned
glUniform1i(8, 8);
glUseProgram(0);
glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 0, 1215);
glBufferData(GL_SHADER_STORAGE_BUFFER, 18432, 0x55cc8c5529e0, GL_DYNAMIC_DRAW);
glBindBuffer(GL_SHADER_STORAGE_BUFFER, 0);
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_1D, 1155);
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_1D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage1D(GL_TEXTURE_1D, 0, GL_RGBA32F, 4, 0, GL_RGBA, GL_FLOAT,
0x55cc8d6d2340);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, 1156);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, 4, 16, 0, GL_RGBA, GL_FLOAT,
0x55cc8d6d2340);
glActiveTexture(GL_TEXTURE2);
glBindTexture(GL_TEXTURE_3D, 1157);
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_3D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage3D(GL_TEXTURE_3D, 0, GL_RGBA32F, 4, 16, 2, 0, GL_RGBA, GL_FLOAT,
0x55cc8d6d2340);
glActiveTexture(GL_TEXTURE3);
glBindTexture(0x84f5, 1158);
glTexParameteri(0x84f5, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(0x84f5, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(0x84f5, 0, GL_RGBA32F, 4, 16, 0, GL_RGBA, GL_FLOAT,
0x55cc8d6d2340);
glActiveTexture(GL_TEXTURE4);
glBindTexture(0x8c18, 1159);
glTexParameteri(0x8c18, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(0x8c18, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(0x8c18, 0, GL_RGBA32F, 4, 16, 0, GL_RGBA, GL_FLOAT,
0x55cc8d6d2340);
glActiveTexture(GL_TEXTURE5);
glBindTexture(GL_TEXTURE_2D_ARRAY, 1160);
glTexParameteri(GL_TEXTURE_2D_ARRAY, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D_ARRAY, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage3D(GL_TEXTURE_2D_ARRAY, 0, GL_RGBA32F, 4, 16, 2, 0, GL_RGBA,
GL_FLOAT, 0x55cc8d6d2340);
glActiveTexture(GL_TEXTURE6);
glBindBuffer(GL_TEXTURE_BUFFER, 1216);
glBufferData(GL_TEXTURE_BUFFER, 2048, 0x55cc8d6d2340, GL_DYNAMIC_DRAW);
glBindBuffer(GL_TEXTURE_BUFFER, 0);
glBindTexture(GL_TEXTURE_BUFFER, 1161);
glTexBuffer(GL_TEXTURE_BUFFER, GL_RGBA32F, 1216);
glActiveTexture(GL_TEXTURE7);
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE, 1162);
glTexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, 4, GL_RGBA32F, 4, 16,
GL_FALSE);
glActiveTexture(GL_TEXTURE8);
glBindTexture(GL_TEXTURE_2D_MULTISAMPLE_ARRAY, 1163);
glTexImage3DMultisample(0x00009102, 4, 0x00008814, 4, 16, 2, GL_FALSE);
glGenFramebuffers(1, 0x00007ffd0d4be21c);
// framebuffers = { 210 }
glBindFramebuffer(GL_FRAMEBUFFER, 210);
glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, 1162, 0);
glClearBufferfv(GL_COLOR, 0, 0x00007ffd0d4be2c0);
glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, 1163, 0);
glClearBufferfv(GL_COLOR, 0, 0x00007ffd0d4be2d0);
glDeleteFramebuffers(1, { 210 });
glUseProgram(2793);
glGenBuffers(1, 0x000055cc8d6eab48);
// buffers = { 1217 }
glBindBuffer(GL_DISPATCH_INDIRECT_BUFFER, 1217);
glBufferData(GL_DISPATCH_INDIRECT_BUFFER, 12, 0x7ffd0d4be4f0, GL_STATIC_DRAW);
glDispatchComputeIndirect(0);
glBindBuffer(GL_SHADER_STORAGE_BUFFER, 1215);
glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT);
glGetBufferSubData(0x000090d2, 0, 18432, 0x55cc8c5529e0);
Incorrect data at index 1028.
Test Run() failed
glActiveTexture(GL_TEXTURE0);
glUseProgram(0);
glDeleteProgram(2793);
glDeleteBuffers(1, { 1215 });
glDeleteTextures(9, { 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163 });
glDeleteBuffers(1, { 1216 });
glDeleteBuffers(1, { 1217 });</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>