[Mesa-dev] [Bug 77443] New: Potential regressions from 1afe3359258a9

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Apr 14 10:41:29 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=77443

          Priority: medium
            Bug ID: 77443
          Assignee: mesa-dev at lists.freedesktop.org
           Summary: Potential regressions from 1afe3359258a9
          Severity: normal
    Classification: Unclassified
                OS: All
          Reporter: cworth at cworth.org
          Hardware: Other
            Status: NEW
           Version: unspecified
         Component: Mesa core
           Product: Mesa

I recently tried cherry-picking commit
1afe3359258a9e89b62c8638761f52d78f6d1cbc to the 10.1 branch of
Mesa. When I did that, I found that the following piglit tests
regressed (passing before the commit and failing afterward):

    all/spec/glsl-1.50/execution/geometry
    clip-distance-out-values
    max-input-components
    point-size-out
    primitive-id-out

    all/spec/glsl-1.50/execution
    gs-redeclares-both-pervertex-blocks
    interface-vs-named-to-gs-array
    redeclare-pervertex-out-subset-gs
    redeclare-pervertex-subset-vs-to-gs

I talked about the regressions with Ken a bit. He thinks it might be
right to just convert the patch from mesa master.

Here's the original patch:

commit 1afe3359258a9e89b62c8638761f52d78f6d1cbc
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Mar 20 11:53:16 2014 -0700

    mesa: In core profile, refuse to draw unless a VAO is bound.

    Core profile requires a non-default VAO to be bound.  Currently, calls
    to glVertexAttribPointer raise INVALID_OPERATION unless a VAO is bound,
    and we never actually get any vertex data set.  Trying to draw without
    any vertex data can only cause problems.  In i965, it causes a crash.

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76400
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Cc: mesa-stable at lists.freedesktop.org

diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
index efc3a2b..8f0b199 100644
--- a/src/mesa/main/api_validate.c
+++ b/src/mesa/main/api_validate.c
@@ -125,8 +125,11 @@ check_valid_to_render(struct gl_context *ctx, const char
*f
         return GL_FALSE;
       break;

-   case API_OPENGL_COMPAT:
    case API_OPENGL_CORE:
+      if (ctx->Array.VAO == ctx->Array.DefaultVAO)
+         return GL_FALSE;
+      /* fallthrough */
+   case API_OPENGL_COMPAT:
       {
          const struct gl_shader_program *vsProg =
             ctx->_Shader->CurrentProgram[MESA_SHADER_VERTEX];

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140414/8393ab84/attachment.html>


More information about the mesa-dev mailing list