Bug 47126 - tests/fbo/fbo-array.c:109: create_array_fbo: Assertion `glGetError() == 0' failed.
Summary: tests/fbo/fbo-array.c:109: create_array_fbo: Assertion `glGetError() == 0' fa...
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium critical
Assignee: mesa-dev
QA Contact:
: 47091 (view as bug list)
Depends on:
Reported: 2012-03-08 23:20 UTC by Vinson Lee
Modified: 2012-03-14 20:43 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Note You need to log in before you can comment on or make changes to this bug.
Description Vinson Lee 2012-03-08 23:20:29 UTC
Run piglit fbo-array on Mesa swrast or softpipe.

$ ./bin/fbo-array -auto
Mesa: Initializing x86-64 optimizations
Mesa: User error: GL_INVALID_VALUE in glFramebufferTextureLayerEXT(level)
fbo-array: fbo/fbo-array.c:109: create_array_fbo: Assertion `glGetError() == 0' failed.
Aborted (core dumped)

(gdb) bt
#0  0x00007f0137b5a445 in __GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007f0137b5dbab in __GI_abort () at abort.c:91
#2  0x00007f0137b5310e in __assert_fail_base (fmt=<optimized out>, assertion=0x4573a0 "glGetError() == 0", 
    file=0x457378 "piglit/tests/fbo/fbo-array.c", line=<optimized out>, function=<optimized out>) at assert.c:94
#3  0x00007f0137b531b2 in __GI___assert_fail (assertion=0x4573a0 "glGetError() == 0", 
    file=0x457378 "piglit/tests/fbo/fbo-array.c", line=109, function=0x457400 "create_array_fbo") at assert.c:103
#4  0x000000000042ac00 in create_array_fbo () at piglit/tests/fbo/fbo-array.c:109
#5  0x000000000042af2e in piglit_display () at piglit/tests/fbo/fbo-array.c:190
#6  0x000000000042b729 in display () at piglit/tests/util/piglit-framework.c:56
#7  0x00007f0138233220 in fghRedrawWindow (window=0x108d460) at freeglut_main.c:210
#8  fghcbDisplayWindow (window=0x108d460, enumerator=0x7ffffa557680) at freeglut_main.c:227
#9  0x00007f0138236939 in fgEnumWindows (enumCallback=0x7f0138233120 <fghcbDisplayWindow>, enumerator=0x7ffffa557680)
    at freeglut_structure.c:394
#10 0x00007f013823365a in fghDisplayAll () at freeglut_main.c:249
#11 glutMainLoopEvent () at freeglut_main.c:1450
#12 0x00007f0138233f0e in glutMainLoop () at freeglut_main.c:1498
#13 0x000000000042be9b in main (argc=1, argv=0x7ffffa5579d8) at piglit/tests/util/piglit-framework.c:304
(gdb) frame 4
#4  0x000000000042ac00 in create_array_fbo () at piglit/tests/fbo/fbo-array.c:109
109			assert(glGetError() == 0);
Comment 1 Vinson Lee 2012-03-09 00:56:30 UTC
a9523af0e88017d683c19ff238bfc5eb7cb88fd0 is the first bad commit
commit a9523af0e88017d683c19ff238bfc5eb7cb88fd0
Author: Anuj Phogat <anuj.phogat@gmail.com>
Date:   Fri Mar 2 12:00:51 2012 -0800

    mesa: Fix valid texture target test in _mesa_GetTexLevelParameteriv()
    _mesa_max_texture_levels() is also used to test valid texture target
    in _mesa_GetTexLevelParameteriv(). GL_TEXTURE_CUBE_MAP is not allowed
    as texture target in glGetTexLevelParameter(). So, this should throw
    GL_INVALID_ENUM error.
    Few other functions which use _mesa_max_texture_levels() like
    getcompressedteximage_error_check() and getteximage_error_check()
    also don't accept GL_TEXTURE_CUBE_MAP.
    Above fix makes piglit fbo-cubemap test to fail. This is because of
    incorrect texture target passed to _mesa_max_texture_levels() in
    framebuffer_texture(). Fixing that as well
    Note: This is a candidate for the stable branches
    Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
    Reviewed-by: Brian Paul <brianp@vmware.com>
Comment 2 Anuj Phogat 2012-03-12 13:48:33 UTC
This is fixed by commit: cc5b0ffae048824a6bdcaf43e0c8c2dd4a7ff14b to mesa-dev
Patch: http://www.mail-archive.com/mesa-dev@lists.freedesktop.org/msg19538.html
Comment 3 Anuj Phogat 2012-03-12 14:00:33 UTC
*** Bug 47091 has been marked as a duplicate of this bug. ***

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.