Author Topic: [invalid] r4474: SegF related to VBO with selectbuf  (Read 772 times)

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
[invalid] r4474: SegF related to VBO with selectbuf
« on: 20 June 2013, 18:15:19 »
I was just taking part in a game (as a client, using atibox) on "klicki", one of the computer of the Titi* family. When the game started my client segfaulted with this:

Code: [Select]
megaglest v3.8-dev
Compiled using: GNUC: 40703 [64bit] on: Jun 20 2013 11:17:46 platform: Linux-X64 endianness: little
SVN: [Rev: 4474M] - using STREFLOP [SSE] - [no-denormals]
radeon: Acquired access to Hyper-Z.
In [/home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5529] Error detected: signal 11:
Error saved to logfile [/home/tomreyn/.megaglest/error.log]
[2013-06-20 20:07:34] *ERROR* In [/home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp::handleRuntimeError Line: 643] [In [/home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5529] Error detected: signal 11:
] gameInitialized = 1, program = 0x1f9ba10
[2013-06-20 20:07:34] *ERROR* In [/home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp::handleRuntimeError Line: 662] [In [/home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5529] Error detected: signal 11:

Stack Trace:
./megaglest:Glest::Game::ExceptionHandler::handleRuntimeError(char const*, bool)address [0x688507] line: 653
./megaglest() [0x68877f]address [0x68877f]
/lib/x86_64-linux-gnu/libc.so.6:()address [0x7f9d5acf60b0] line: 0
[0x7f9d44f621a2]address [0x7f9d44f621a2] line: 0
]

Segmentation fault detected, analyzing...

warning: [New LWP 24006]
[New LWP 24010]
[New LWP 24008]
[New LWP 24013]
[New LWP 24017]
[New LWP 24012]
[New LWP 24024]
[New LWP 24049]
[New LWP 24015]
[New LWP 24021]
[New LWP 24051]
[New LWP 24050]
[New LWP 24048]
[New LWP 24053]
[New LWP 24052]
[New LWP 24016]
[New LWP 24054]
Can't read pathname for load map: Eingabe-/Ausgabefehler.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fffc3d95000
121    ../../../../../src/mesa/vbo/vbo_exec_array.c: Datei oder Verzeichnis nicht gefunden.
Core was generated by `./megaglest'.
Program terminated with signal 11, Segmentation fault.
#0  vbo_get_minmax_index (count=378, max_index=<synthetischer Zeiger>, min_index=<synthetischer Zeiger>, ib=0x7fffc3c27cd0, ctx=0x242a520, prim=<optimized out>) at ../../../../../src/mesa/vbo/vbo_exec_array.c:121
#0  vbo_get_minmax_index (count=378, max_index=<synthetischer Zeiger>, min_index=<synthetischer Zeiger>, ib=0x7fffc3c27cd0, ctx=0x242a520, prim=<optimized out>) at ../../../../../src/mesa/vbo/vbo_exec_array.c:121
#1  vbo_get_minmax_indices (ctx=ctx@entry=0x242a520, prims=prims@entry=0x7fffc3c27cf0, ib=ib@entry=0x7fffc3c27cd0, min_index=min_index@entry=0x7fffc3c2760c, max_index=max_index@entry=0x7fffc3c27ca0, nr_prims=nr_prims@entry=1) at ../../../../../src/mesa/vbo/vbo_exec_array.c:212
#2  0x00007f9d4f62a603 in st_feedback_draw_vbo (ctx=0x242a520, prims=0x7fffc3c27cf0, nr_prims=1, ib=0x7fffc3c27cd0, index_bounds_valid=<optimized out>, min_index=4294967295, max_index=0, tfb_vertcount=0x0) at ../../../../../src/mesa/state_tracker/st_draw_feedback.c:120
#3  0x00007f9d4fc2326a in vbo_handle_primitive_restart (ctx=ctx@entry=0x242a520, prim=prim@entry=0x7fffc3c27cf0, nr_prims=nr_prims@entry=1, ib=ib@entry=0x7fffc3c27cd0, index_bounds_valid=index_bounds_valid@entry=0 '\000', min_index=min_index@entry=4294967295, max_index=max_index@entry=4294967295) at ../../../../../src/mesa/vbo/vbo_exec_array.c:544
#4  0x00007f9d4fc24184 in vbo_validated_drawrangeelements (ctx=ctx@entry=0x242a520, mode=mode@entry=4, index_bounds_valid=index_bounds_valid@entry=0 '\000', start=start@entry=4294967295, end=end@entry=4294967295, count=count@entry=378, type=type@entry=5125, indices=indices@entry=0x136dd7e0, basevertex=basevertex@entry=0, numInstances=numInstances@entry=1, baseInstance=baseInstance@entry=0) at ../../../../../src/mesa/vbo/vbo_exec_array.c:841
#5  0x00007f9d4fc244f4 in vbo_exec_DrawElements (mode=4, count=378, type=5125, indices=0x136dd7e0) at ../../../../../src/mesa/vbo/vbo_exec_array.c:971
#6  0x0000000000620b95 in Glest::Game::Renderer::MapRenderer::Layer::renderVisibleLayer (this=0xd505a80) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/graphics/renderer.cpp:3970
#7  0x000000000064365c in Glest::Game::Renderer::MapRenderer::renderVisibleLayers (this=0xe7e8c0 <Glest::Game::Renderer::getInstance()::renderer+1376>, map=0xe7e41c <Glest::Game::Renderer::getInstance()::renderer+188>, coordStep=0, qCache=...) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/graphics/renderer.cpp:4104
#8  0x0000000000643a24 in Glest::Game::Renderer::renderSurface (this=0xe7e360 <Glest::Game::Renderer::getInstance()::renderer>, renderFps=33558272) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/graphics/renderer.cpp:4221
#9  0x000000000059a261 in Glest::Game::Game::render3d (this=this@entry=0x3986dc0) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/game/game.cpp:4975
#10 0x00000000005ab02d in Glest::Game::Game::renderWorker (this=this@entry=0x3986dc0) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/game/game.cpp:3131
#11 0x00000000005b15b8 in Glest::Game::Game::render (this=0x3986dc0) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/game/game.cpp:3061
#12 0x00000000006b0ee4 in Glest::Game::Program::loopWorker (this=0x1f9ba10) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/program.cpp:422
#13 0x00000000006b3df5 in Glest::Game::Program::loop (this=<optimized out>) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/program.cpp:369
#14 0x000000000068840d in Glest::Game::ExceptionHandler::handleRuntimeError (msg=msg@entry=0x7fffc3c2af80 "In [/home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp::handleSIGSEGV Line: 5529] Error detected: signal 11:\n", getStackTraceString=getStackTraceString@entry=true) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp:684
#15 0x000000000068877f in Glest::Game::handleSIGSEGV (sig=<optimized out>) at /home/tomreyn/SCM/megaglest-trunk/source/glest_game/main/main.cpp:5533
#16 <signal handler called>
#17 0x00007f9d44f621a2 in ?? ()
#18 0x0000000002491e10 in ?? ()
#19 0x00000000024821d0 in ?? ()
#20 0x00007fffc3c2d530 in ?? ()
#21 0x0000000000000000 in ?? ()

Note that my game was (accidentially) set to selectbuf, which doesn't actually work on this system. Still I don't think it should be crashing. VBO support should be implemented on this r300 driver by now, though.
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,239
    • View Profile
Re: r4474: SegF related to VBO with selectbuf
« Reply #1 on: 20 June 2013, 19:26:54 »
Does this occur without select buf selected? The error is coming from the mesa driver itself and crashes when rendering part of the map terrain.

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
Re: r4474: SegF related to VBO with selectbuf
« Reply #2 on: 20 June 2013, 19:58:34 »
It only seems to happen with selectbuf. Since this is deprecated, maybe that's to be expected then?

Since the bug is in the mesa driver, I assume there's no way for MG to handle it gracefully?
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,239
    • View Profile
Re: r4474: SegF related to VBO with selectbuf
« Reply #3 on: 20 June 2013, 20:19:34 »
I don't think so, it reports it supports VBO's but crashes while rendering with it, so somehow it is corrupt, perhaps due to selectbuf code in the driver messing with its state.

tomreyn

  • Local Moderator
  • Airship
  • ********
  • Posts: 2,764
    • View Profile
    • MegaGlest - the free and open source cross platform 3D real-time strategy game
Re: r4474: SegF related to VBO with selectbuf
« Reply #4 on: 20 June 2013, 20:36:28 »
Thanks for the explanation.
atibox: Ryzen 1800X (8 cores @3.6GHz), 32 GB RAM, MSI Radeon RX 580 Gaming X 8G, PCI subsystem ID [1462:3417], (Radeon RX 580 chipset, POLARIS10) @3440x1440; latest stable Ubuntu release, (open source) radeon (amdgpu) / mesa video driver
atibox (old): Core2Quad Q9400 (4 cores @2.66GHz), 8 GB RAM, XFX HD-467X-DDF2, PCI subsystem ID [1682:2931], (Radeon HD 4670, RV730 XT) @1680x1050; latest stable Ubuntu release, (open source) radeon / mesa video driver
notebook: HP envy13d020ng
internet access: VDSL2+

· · · How YOU can contribute to MG · Latest development snapshot · How to build yourself · Megapack techtree · Currently hosted MG games · · ·