Bug 90669

Summary: make check DispatchSanity_test.GLES3 regression
Product: Mesa Reporter: Vinson Lee <vlee>
Component: Mesa coreAssignee: Ian Romanick <idr>
Status: RESOLVED FIXED QA Contact: mesa-dev
Severity: normal    
Priority: medium CC: brianp, idr
Version: gitKeywords: bisected, regression
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Vinson Lee 2015-05-26 23:40:22 UTC
mesa: 8d813d14e1f5c690c6737c6cd6fc01937a7d4246 (master 10.7.0-devel)


$ make check
[...]
[ RUN      ] DispatchSanity_test.GL31_CORE
dispatch_sanity.cpp:170: Failure
Value of: table[i]
  Actual: 0x410350
Expected: nop_table[i]
Which is: 0x7f339f061750
i = 0 (NewList)
dispatch_sanity.cpp:170: Failure
[...]
Value of: table[i]
  Actual: 0x410350
Expected: nop_table[i]
Which is: 0x7f339f05c230
i = 1559 (???)
[  FAILED  ] DispatchSanity_test.GLES3 (27 ms)


commit be71bbfaa2ad201b570b56847a13328fc359d0ee
Author: Brian Paul <brianp@vmware.com>
Date:   Fri May 15 09:08:14 2015 -0600

    mesa: do not use _glapi_new_nop_table() for DRI builds
    
    Commit 4bdbb588a9d38 introduced new _glapi_new_nop_table() and
    _glapi_set_nop_handler() functions in the glapi dispatcher (which
    live in libGL.so).  The calls to those functions from context.c
    would be undefined (i.e. an ABI break) if the libGL used at runtime
    was older.
    
    For the time being, use the old single generic_nop() function for
    non-Windows builds to avoid this problem.  At some point in the future
    it should be safe to remove this work-around.  See comments for more
    details.
    
    v2: Incorporate feedback from Emil.  Use _WIN32 instead of
    GLX_DIRECT_RENDERING to control behavior, move comments.
    
    Cc: 10.6 <mesa-stable@lists.freedesktop.org>
    Reviewed-and-tested-by: Ian Romanick <ian.d.romanick@intel.com>
Comment 1 Ian Romanick 2015-05-27 00:14:22 UTC
There's a patch on the list that should fix this:

http://lists.freedesktop.org/archives/mesa-dev/2015-May/085166.html
Comment 2 Ian Romanick 2015-05-27 06:47:12 UTC
Should be fixed by:

commit 2b8c51834bcc34a70dec9b470a28c0ef972d6993
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Tue May 26 11:41:44 2015 -0700

    glapi: Encapsulate nop table knowledge in new _mesa_new_nop_table function
    
    Encapsulate the knowledge about how to build the nop table in a new
    _mesa_new_nop_table function.  This makes it easier for dispatch_sanity
    to keep working now and in the future.
    
    Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
    Reviewed-by: Brian Paul <brianp@vmware.com>
    Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
    Tested-by: Mark Janes <mark.a.janes@intel.com>
    Cc: 10.6 <mesa-stable@lists.freedesktop.org>

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.