Summary: | main/teximage.c:2393: _mesa_choose_texture_format: Assertion `f != MESA_FORMAT_NONE' failed. | ||
---|---|---|---|
Product: | Mesa | Reporter: | Vinson Lee <vlee> |
Component: | Mesa core | Assignee: | Brian Paul <brianp> |
Status: | CLOSED FIXED | QA Contact: | |
Severity: | critical | ||
Priority: | medium | ||
Version: | git | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Vinson Lee
2011-06-01 15:08:30 UTC
Fixed w/ commit 57242715cb3ce9855460a5f1ccbca0dde8045c21 d57e95f22af1a1b2d9013db7a15524717bd29579 is the first bad commit commit d57e95f22af1a1b2d9013db7a15524717bd29579 Author: Brian Paul <brianp@vmware.com> Date: Sat May 21 10:43:49 2011 -0600 st/mesa: rewrite st_choose_format() to be table driven Instead of using a giant switch statement with lots of code, use a table to convert GL format enums to pipe formats. Tested by running the old code next to the new and asserting that the return value was the same for piglit tests. We're doing a linear search, but if that ever appears to be too slow the table could easily be sorted or hashed. :040000 040000 d74f6bf0cb7a829aec302f7ca454a45b96474b3d bfdabfea732ff1655083ae0f2f4896967da8bbab M src bisect run success The bug still occurs with piglit EXT_packed_float fbo-alphatest-formats test. mesa: 57242715cb3ce9855460a5f1ccbca0dde8045c21 (master) $ ./bin/fbo-alphatest-formats GL_EXT_packed_float -auto Using test set: GL_EXT_packed_float Mesa 7.11-devel implementation error: unhandled format! Please report at bugs.freedesktop.org Mesa 7.11-devel implementation error: unhandled format! Please report at bugs.freedesktop.org fbo-alphatest-formats: main/teximage.c:2393: _mesa_choose_texture_format: Assertion `f != MESA_FORMAT_NONE' failed. Aborted (core dumped) (gdb) bt #0 0x00760416 in __kernel_vsyscall () #1 0x001e0941 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0x001e3e42 in abort () at abort.c:92 #3 0x001d98e8 in __assert_fail (assertion=0xac5545 "f != MESA_FORMAT_NONE", file=0xac4a50 "main/teximage.c", line=2393, function=0xac5bb3 "_mesa_choose_texture_format") at assert.c:81 #4 0x008924f2 in _mesa_choose_texture_format (ctx=0x8e5d8e0, texObj=0x8f05f98, target=3553, level=0, internalFormat=35898, format=6408, type=5126) at main/teximage.c:2393 #5 0x0089296e in teximage (ctx=0x8e5d8e0, dims=2, target=3553, level=0, internalFormat=35898, width=128, height=64, depth=1, border=0, format=6408, type=5126, pixels=0x0) at main/teximage.c:2493 #6 0x00892d6f in _mesa_TexImage2D (target=3553, level=0, internalFormat=35898, width=128, height=64, border=0, format=6408, type=5126, pixels=0x0) at main/teximage.c:2566 #7 0x0806a922 in test_format () #8 0x0806a525 in fbo_formats_display () #9 0x0806b3eb in piglit_display () #10 0x0806bddb in display () #11 0x00195820 in fghRedrawWindow (window=0x8d63fe0, enumerator=0xbf9148f8) at freeglut_main.c:210 #12 fghcbDisplayWindow (window=0x8d63fe0, enumerator=0xbf9148f8) at freeglut_main.c:227 #13 0x00199660 in fgEnumWindows (enumCallback=0x195790 <fghcbDisplayWindow>, enumerator=0xbf9148f8) at freeglut_structure.c:394 #14 0x00195cdb in fghDisplayAll () at freeglut_main.c:249 #15 glutMainLoopEvent () at freeglut_main.c:1450 #16 0x00196605 in glutMainLoop () at freeglut_main.c:1498 #17 0x0806bf7f in main () (gdb) frame 4 #4 0x008924f2 in _mesa_choose_texture_format (ctx=0x8e5d8e0, texObj=0x8f05f98, target=3553, level=0, internalFormat=35898, format=6408, type=5126) at main/teximage.c:2393 2393 ASSERT(f != MESA_FORMAT_NONE); Fixed with commit 029ea39fb9b707a861f4a884c8c191aef0e63af9 mesa: e5d241ddb231758e0a0f41eee28435d170d583c0 (master) Verified fixed. |
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.