[Piglit] [PATCH] tests/spec: ARB_debug_output fix false fail

Ian Romanick idr at freedesktop.org
Fri Sep 6 11:40:53 PDT 2013

On 09/06/2013 02:32 AM, Timothy Arceri wrote:
> Updates to the implementation after implementing KHR_debug means that either
> GL_DEBUG_OUTPUT needs to be enabled or CONTEXT_DEBUG_BIT bit set for the message
> log to be enabled.
> Signed-off-by: Timothy Arceri <t_arceri at yahoo.com.au>
> ---
>  tests/spec/arb_debug_output/api_error.c |    1 +
>  1 file changed, 1 insertion(+)
> diff --git a/tests/spec/arb_debug_output/api_error.c b/tests/spec/arb_debug_output/api_error.c
> index 61467c3..bd69965 100644
> --- a/tests/spec/arb_debug_output/api_error.c
> +++ b/tests/spec/arb_debug_output/api_error.c
> @@ -149,6 +149,7 @@ void piglit_init(int argc, char **argv)
>     piglit_require_extension("GL_ARB_debug_output");
> +   glEnable(GL_DEBUG_OUTPUT);

This needs to at least be guarded by 'if
(piglit_is_extension_supported("GL_KHR_debug"))'.  Otherwise, an
implementation that only supports the GL_ARB_debug_output (e.g.,
shipping Mesa 9.2 implementations) will generate a GL_INVALID_ENUM error

I think we need to get a way in piglit to request a debug context, and
we should only expose this extension from Mesa in a debug context...
perhaps with an environment variable to over-ride.  The ARB_debug_output
spec even recommends this:

    "For performance reasons it is recommended, but not required, that
    implementations restrict supporting this extension only to
    contexts created using the debug flag as provided by
    WGL_create_context or GLX_create_context.  This extension places no
    limits on any other functionality provided by debug contexts through
    other extensions."

Perhaps Chad will have a suggestion for how to plumb that into piglit...

>     if (!piglit_check_gl_error(GL_NO_ERROR))
>        piglit_report_result(PIGLIT_FAIL);

More information about the Piglit mailing list