Bug 44239

Summary: spring rts crashes with r300g
Product: Mesa Reporter: Pawel <pawlerson>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED MOVED QA Contact:
Severity: blocker    
Priority: highest CC: pavel.ondracka, pawlerson
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: spring rts error log
backtrace
dmesg errors when running Spring RTS

Description Pawel 2011-12-28 11:52:00 UTC
Created attachment 54918 [details]
spring rts error log

There's an error when Spring RTS finishes loading:

Mesa: User error: GL_INVALID_OPERATION in glUniform(type mismatch)
state_tracker/st_cb_texture.c:291:guess_base_level_size: Assertion `width >= 1' failed.

I'm using Kubuntu 11.10 with 3.1.6-030106-generic #201112211719 SMP kernel and up to date Oibaf repository:

https://launchpad.net/~oibaf/+archive/graphics-drivers

Error log attached.
Comment 1 Marek Olšák 2011-12-31 01:37:04 UTC
Re-assigning to Mesa core. The crash is in src/mesa/state_tracker.
Comment 2 Pawel 2012-01-05 02:25:44 UTC
Still the same with Linux 3.2 and updated Oibaf repository. Anyone?
Comment 3 Fabio Pedretti 2012-01-05 02:30:59 UTC
Can you get a backtrace? Instructions here: https://launchpad.net/~oibaf/+archive/graphics-drivers/
Comment 4 Pawel 2012-01-05 06:21:24 UTC
Created attachment 55170 [details]
backtrace
Comment 5 Alex Deucher 2012-01-05 06:27:00 UTC
This might be related to bug 44405.
Comment 6 Marek Olšák 2012-01-05 07:38:20 UTC
Could you please make a trace file using apitrace[1]? Please make the trace with:

export GALLIUM_ABORT_ON_ASSERT=0

[1] https://github.com/apitrace/apitrace
Comment 7 Pawel 2012-01-05 14:32:25 UTC
Here is the apitrace:

http://www.2shared.com/file/aaDlB9Qw/springtrace.html

PS. Uploaded three times due to some errors, 15KB/s. Hope it will help! :)
Comment 8 Marcin Baczyński 2012-01-05 14:52:55 UTC
FWIW, replaying this trace crashes on r600g (on Redwood, Mesa git a44d715d):

407083 glXSwapBuffers(dpy = 0x1b17c60, drawable = 31457295)

407083: warning: could not infer drawable size (glViewport never called)

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff427d7d2 in _save_Vertex3fv (v=0x7fffee893010) at vbo/vbo_attrib_tmp.h:202
202        ATTR3FV(VBO_ATTRIB_POS, v);
(gdb) bt
#0  0x00007ffff427d7d2 in _save_Vertex3fv (v=0x7fffee893010) at vbo/vbo_attrib_tmp.h:202
#1  0x00007ffff4227ab4 in _ae_ArrayElement (elt=357) at main/api_arrayelt.c:1670
#2  0x00007ffff427395b in _save_OBE_DrawArrays (mode=<optimized out>, start=0, count=1956) at vbo/vbo_save_api.c:1106
#3  0x000000000046d9c9 in retrace_glDrawArrays(trace::Call&) ()
#4  0x000000000050372e in retrace::Retracer::retrace(trace::Call&) ()
#5  0x00000000004c43f3 in main ()
(gdb) bt full
#0  0x00007ffff427d7d2 in _save_Vertex3fv (v=0x7fffee893010) at vbo/vbo_attrib_tmp.h:202
        dest = <optimized out>
        save = 0x23923e8
        ctx = 0x235e6b0
#1  0x00007ffff4227ab4 in _ae_ArrayElement (elt=357) at main/api_arrayelt.c:1670
        src = <optimized out>
        ctx = 0x235e6b0
        actx = <optimized out>
        aa = 0x2394910
        at = <optimized out>
        disp = 0x238b850
        do_map = <optimized out>
#2  0x00007ffff427395b in _save_OBE_DrawArrays (mode=<optimized out>, start=0, count=1956) at vbo/vbo_save_api.c:1106
        ctx = 0x235e6b0
        save = <optimized out>
        i = <optimized out>
#3  0x000000000046d9c9 in retrace_glDrawArrays(trace::Call&) ()
No symbol table info available.
#4  0x000000000050372e in retrace::Retracer::retrace(trace::Call&) ()
No symbol table info available.
#5  0x00000000004c43f3 in main ()
No symbol table info available.
Comment 9 Pawel 2012-01-17 03:49:22 UTC
Created attachment 55668 [details]
dmesg errors when running Spring RTS

I reverted to linux-generic (3.0.0-14-generic #23-Ubuntu SMP) and purged Oibaf repository, so I'm using generic mesa and drivers from Kubuntu. When running Spring there are many errors in dmesg.
Comment 10 Pawel 2012-01-17 03:50:31 UTC
I forget to add game seems to be running - I can hear the music and sound when I click somewhere, but what I see is just flickering Spring RTS menu.
Comment 11 Pavel Ondračka 2013-02-09 15:37:07 UTC
This can be easily reproduced using r300g, softpipe or llvmpipe with this webgl test:
https://www.khronos.org/registry/webgl/sdk/tests/conformance/misc/type-conversion-test.html
This was tested with firefox 18.0. To test with llvmpipe or softpipe you probably also need to set webgl.force-enabled=true in about:config, since it seems they are blacklisted.

Backtrace:
../../src/mesa/state_tracker/st_cb_texture.c:271:guess_base_level_size: Assertion `width >= 1' failed.

Program received signal SIGTRAP, Trace/breakpoint trap.
0x9b325885 in _debug_assert_fail (expr=0x9bd25ac7 "width >= 1", file=
    0x9bd25a98 "../../src/mesa/state_tracker/st_cb_texture.c", line=271, 
    function=0x9bd25ff2 "guess_base_level_size") at util/u_debug.c:278
278	      os_abort();
(gdb) bt full
#0  0x9b325885 in _debug_assert_fail (expr=0x9bd25ac7 "width >= 1", file=
    0x9bd25a98 "../../src/mesa/state_tracker/st_cb_texture.c", line=271, 
    function=0x9bd25ff2 "guess_base_level_size") at util/u_debug.c:278
No locals.
#1  0x9b1e4d94 in guess_base_level_size (target=3553, width=0, height=1, depth=
    1, level=0, width0=0xbfff91d0, height0=0xbfff91cc, depth0=0xbfff91c8)
    at ../../src/mesa/state_tracker/st_cb_texture.c:271
        __FUNCTION__ = "guess_base_level_size"
#2  0x9b1e4fbd in guess_and_alloc_texture (st=0xa4dd1000, stObj=0x9db9a000, 
    stImage=0xa4b89dd0) at ../../src/mesa/state_tracker/st_cb_texture.c:353
        lastLevel = 0
        width = 0
        height = 2602451981
        depth = 3221197304
        bindings = 0
        ptWidth = 2619001788
        ptHeight = 3221197276
        ptDepth = 15981728
        ptLayers = 2152398528
        fmt = 2603772240
        __FUNCTION__ = "guess_and_alloc_texture"
#3  0x9b1e5323 in st_AllocTextureImageBuffer (ctx=0xa7c3e000, texImage=
    0xa4b89dd0) at ../../src/mesa/state_tracker/st_cb_texture.c:459
        st = 0xa4dd1000
        stImage = 0xa4b89dd0
        stObj = 0x9db9a000
        level = 0
        width = 0
        height = 1
        depth = 1
        __FUNCTION__ = "st_AllocTextureImageBuffer"
#4  0x9b15fbe8 in copyteximage (ctx=0xa7c3e000, dims=2, target=3553, level=0, 
    internalFormat=6408, x=0, y=0, width=0, height=1, border=0)
    at ../../src/mesa/main/teximage.c:3444
        dstX = 0
        dstY = 0
        srcX = 0
        srcY = 0
        dstZ = 0
        texObj = 0x9db9a000
        texImage = 0xa4b89dd0
        face = 0
        texFormat = MESA_FORMAT_RGBA8888_REV
        __FUNCTION__ = "copyteximage"
        __PRETTY_FUNCTION__ = "copyteximage"
#5  0x9b15fe20 in _mesa_CopyTexImage2D (target=3553, level=0, internalFormat=
    6408, x=0, y=0, width=0, height=1, border=0)
    at ../../src/mesa/main/teximage.c:3485
        ctx = 0xa7c3e000
#6  0x4c7a4f94 in ?? () from /usr/lib/xulrunner/libxul.so
No symbol table info available.
#7  0x4c7a6499 in ?? () from /usr/lib/xulrunner/libxul.so
No symbol table info available.
.....
.....
Rest of the backtrace (in libxul.so and firefox) is truncated since I don't have firefox debug symbols, however it probably doesn't contain anything interesting. Also no errors in dmesg.
Comment 12 Marek Olšák 2013-03-03 14:40:23 UTC
(In reply to comment #11)
> This can be easily reproduced using r300g, softpipe or llvmpipe with this
> webgl test:
> https://www.khronos.org/registry/webgl/sdk/tests/conformance/misc/type-
> conversion-test.html
> This was tested with firefox 18.0. To test with llvmpipe or softpipe you
> probably also need to set webgl.force-enabled=true in about:config, since it
> seems they are blacklisted.
> 
> Backtrace:
> ../../src/mesa/state_tracker/st_cb_texture.c:271:guess_base_level_size:
> Assertion `width >= 1' failed.
> 
> Program received signal SIGTRAP, Trace/breakpoint trap.
> 0x9b325885 in _debug_assert_fail (expr=0x9bd25ac7 "width >= 1", file=
>     0x9bd25a98 "../../src/mesa/state_tracker/st_cb_texture.c", line=271, 
>     function=0x9bd25ff2 "guess_base_level_size") at util/u_debug.c:278
> 278	      os_abort();
> (gdb) bt full
> #0  0x9b325885 in _debug_assert_fail (expr=0x9bd25ac7 "width >= 1", file=
>     0x9bd25a98 "../../src/mesa/state_tracker/st_cb_texture.c", line=271, 
>     function=0x9bd25ff2 "guess_base_level_size") at util/u_debug.c:278
> No locals.
> #1  0x9b1e4d94 in guess_base_level_size (target=3553, width=0, height=1,
> depth=
>     1, level=0, width0=0xbfff91d0, height0=0xbfff91cc, depth0=0xbfff91c8)
>     at ../../src/mesa/state_tracker/st_cb_texture.c:271
>         __FUNCTION__ = "guess_base_level_size"
> #2  0x9b1e4fbd in guess_and_alloc_texture (st=0xa4dd1000, stObj=0x9db9a000, 
>     stImage=0xa4b89dd0) at ../../src/mesa/state_tracker/st_cb_texture.c:353
>         lastLevel = 0
>         width = 0
>         height = 2602451981
>         depth = 3221197304
>         bindings = 0
>         ptWidth = 2619001788
>         ptHeight = 3221197276
>         ptDepth = 15981728
>         ptLayers = 2152398528
>         fmt = 2603772240
>         __FUNCTION__ = "guess_and_alloc_texture"
> #3  0x9b1e5323 in st_AllocTextureImageBuffer (ctx=0xa7c3e000, texImage=
>     0xa4b89dd0) at ../../src/mesa/state_tracker/st_cb_texture.c:459
>         st = 0xa4dd1000
>         stImage = 0xa4b89dd0
>         stObj = 0x9db9a000
>         level = 0
>         width = 0
>         height = 1
>         depth = 1
>         __FUNCTION__ = "st_AllocTextureImageBuffer"
> #4  0x9b15fbe8 in copyteximage (ctx=0xa7c3e000, dims=2, target=3553,
> level=0, 
>     internalFormat=6408, x=0, y=0, width=0, height=1, border=0)
>     at ../../src/mesa/main/teximage.c:3444
>         dstX = 0
>         dstY = 0
>         srcX = 0
>         srcY = 0
>         dstZ = 0
>         texObj = 0x9db9a000
>         texImage = 0xa4b89dd0
>         face = 0
>         texFormat = MESA_FORMAT_RGBA8888_REV
>         __FUNCTION__ = "copyteximage"
>         __PRETTY_FUNCTION__ = "copyteximage"
> #5  0x9b15fe20 in _mesa_CopyTexImage2D (target=3553, level=0, internalFormat=
>     6408, x=0, y=0, width=0, height=1, border=0)
>     at ../../src/mesa/main/teximage.c:3485
>         ctx = 0xa7c3e000
> #6  0x4c7a4f94 in ?? () from /usr/lib/xulrunner/libxul.so
> No symbol table info available.
> #7  0x4c7a6499 in ?? () from /usr/lib/xulrunner/libxul.so
> No symbol table info available.

This is a different issue and easily fixable. I'm afraid it won't help fix the original bug.
Comment 13 saliksaeed@ymail.com (Spammer; Account disabled) 2019-03-06 07:34:01 UTC
aur bhai fr bna li h :D
Comment 14 sujuviyiy@techgroup.top (Spammer; Account disabled) 2019-03-06 07:35:39 UTC

*** This bug has been marked as a duplicate of bug 109849 ***
Comment 15 GitLab Migration User 2019-09-18 20:22:53 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/970.

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.