[Mesa-dev] [PATCH 00/15] Implement KHR_debug

Ian Romanick idr at freedesktop.org
Wed Sep 4 13:01:30 PDT 2013


On 09/04/2013 12:28 PM, Brian Paul wrote:
> OK, make check passes or fails depending on how you configure.  My tree
> configured for LLVM/softpipe says make check passes.  But in my
> DRI/vmware-svga tree, make check fails.

Aren't the software pipe drivers DRI?  It seems like they should still
hit the same check paths.  If they don't (but are building a DRI libGL),
that's a build system bug.

> I think the fix is pretty simple: add the new GL_KHR_debug functions to
> dispatch_sanity.cpp.  I'll post a patch...
> 
> -Brian
> 
> On 09/04/2013 01:04 PM, Brian Paul wrote:
>> I just did a 'make check' here and didn't see any failures.  However, my
>> output looks different from what Paul posted.  I need to do a fresh
>> reconfigure/test...
>>
>> -Brian
>>
>>
>> On 09/04/2013 12:24 PM, Ian Romanick wrote:
>>> Since you obviously didn't run 'make check', I will be reverting this
>>> entire series later today.
>>>
>>> YOU MUST RUN 'make check'.
>>>
>>> On 08/26/2013 03:43 AM, Timothy Arceri wrote:
>>>> The following patchset implements the KHR_debug extension.
>>>>
>>>> Here are some notes/assumptions I have made:
>>>>
>>>> * These patches only enable the extension for GL not ES
>>>>
>>>> * MAX_LABEL_LENGTH and MAX_DEBUG_GROUP_STACK_DEPTH are set to the
>>>> minimum
>>>>    values defined in the spec.
>>>>
>>>> * Assume its fine that Push/Pop also filter the output of the
>>>>    ARB_debug_output extension
>>>>
>>>> * From the KHR_debug spec "If the DEBUG_OUTPUT state is disabled
>>>> then no
>>>>    messages are added to the message log." To allow for this the
>>>> state of
>>>>    DEBUG_OUTPUT now affects the ARB_debug_output extension meaning
>>>>    callbacks and messages are now not called/stored unless either
>>>>    DEBUG_OUTPUT is enabled or CONTEXT_DEBUG_BIT_ARB is set. The
>>>> existing
>>>>    Mesa implementation allowed callbacks/messages to be stored without
>>>>    CONTEXT_DEBUG_BIT_ARB being set.
>>>>
>>>> * As both arb_debug_output and khr_debug have the same message log the
>>>> messages returned by the arb_debug_output functions need to be filtered
>>>> to return types/severitys that the caller expects (rather than new type
>>>> introduced byt khr_debug). To work around this just the types are just
>>>> remap them to types arb_debug_output understands.
>>>>
>>>> Timothy Arceri (15):
>>>>    mesa: Add some constants and state variables for KHR_debug functions
>>>>    mesa:  Share common code between ARB_debug_output and KHR_debug
>>>>      functions
>>>>    mesa: Add a clone function to mesa hash
>>>>    mesa: Implement glPushDebugGroup and glPopDebugGroup
>>>>    mesa: make _mesa_lookup_arrayobj() non-static
>>>>    mesa: make _mesa_lookup_list() non-static
>>>>    mesa: add debug Label field to several data structures
>>>>    mesa: free object labels when deleting
>>>>    mesa: make _mesa_validate_sync() non-static
>>>>    mesa: Implement KHR_debug ObjectLabel functions
>>>>    mesa: Update builds scripts to build object labels
>>>>    mesa: Implement GL_DEBUG_OUTPUT
>>>>    mesa: Remap debug type and severity
>>>>    glapi: Setup autogeneration infrastructure for KHR_debug
>>>>    mesa: Setup remaining infrastucture and enable KHR_debug
>>>>
>>>>   src/mapi/glapi/gen/gl_API.xml                |  149 +++++-
>>>>   src/mapi/glapi/gen/gl_genexec.py             |    1 +
>>>>   src/mesa/Makefile.sources                    |    1 +
>>>>   src/mesa/SConscript                          |    1 +
>>>>   src/mesa/drivers/dri/i965/brw_context.c      |    2 +
>>>>   src/mesa/main/arrayobj.c                     |   11 +-
>>>>   src/mesa/main/arrayobj.h                     |    3 +
>>>>   src/mesa/main/bufferobj.c                    |    1 +
>>>>   src/mesa/main/config.h                       |    7 +-
>>>>   src/mesa/main/dlist.c                        |   13 +-
>>>>   src/mesa/main/dlist.h                        |    2 +
>>>>   src/mesa/main/enable.c                       |    9 +
>>>>   src/mesa/main/errors.c                       |  633
>>>> +++++++++++++++++++-------
>>>>   src/mesa/main/errors.h                       |   20 +
>>>>   src/mesa/main/extensions.c                   |    3 +
>>>>   src/mesa/main/framebuffer.c                  |    1 +
>>>>   src/mesa/main/get_hash_params.py             |   14 +-
>>>>   src/mesa/main/hash.c                         |   26 ++
>>>>   src/mesa/main/hash.h                         |    3 +
>>>>   src/mesa/main/mtypes.h                       |   34 +-
>>>>   src/mesa/main/objectlabel.c                  |  277 +++++++++++
>>>>   src/mesa/main/objectlabel.h                  |   61 +++
>>>>   src/mesa/main/queryobj.c                     |    1 +
>>>>   src/mesa/main/renderbuffer.c                 |    1 +
>>>>   src/mesa/main/samplerobj.c                   |    1 +
>>>>   src/mesa/main/shaderobj.c                    |    3 +
>>>>   src/mesa/main/syncobj.c                      |    3 +-
>>>>   src/mesa/main/syncobj.h                      |    3 +
>>>>   src/mesa/main/texobj.c                       |    2 +
>>>>   src/mesa/main/transformfeedback.c            |    1 +
>>>>   src/mesa/state_tracker/st_cb_bufferobjects.c |    1 +
>>>>   src/mesa/state_tracker/st_cb_syncobj.c       |    1 +
>>>>   src/mesa/state_tracker/st_manager.c          |    6 +-
>>>>   33 files changed, 1105 insertions(+), 190 deletions(-)
>>>>   create mode 100644 src/mesa/main/objectlabel.c
>>>>   create mode 100644 src/mesa/main/objectlabel.h
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list