(r_smp) Crash when running Pulse on Material system
Crash when running Pulse on Material system, I was running this branch:
- https://github.com/DaemonEngine/Daemon/pull/1645
But haven't compared with master yet.
Thread 19 "render thread" received signal SIGSEGV, Segmentation fault.
0x000056adcd76a9b0 in Poly2dIndexedCommand::ExecuteSelf (this=0x79adb84b7aac) at src/engine/renderer/tr_backend.cpp:4905
4905 tess.verts[ tess.numVertexes ].xyz[ 1 ] = verts[ i ].xyz[ 1 ] + translation[ 1 ];
Thread 19 (Thread 0x79ada6a006c0 (LWP 3545100) "render thread"):
#0 0x000056adcd76a9b0 in Poly2dIndexedCommand::ExecuteSelf (this=0x79adb84b7aac) at src/engine/renderer/tr_backend.cpp:4905
#1 0x000056adcd76c599 in RB_ExecuteRenderCommands (data=<optimized out>) at src/engine/renderer/tr_backend.cpp:5590
#2 0x000056adcd76c622 in RB_RenderThread () at src/engine/renderer/tr_backend.cpp:5621
#3 0x000056adcd81b9d6 in GLimp_RenderThreadWrapper () at src/engine/sys/sdl_glimp.cpp:236
#4 0x000079ade5f14296 in ?? () from /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#5 0x000079ade509caa4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
#6 0x000079ade5129c3c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Also this:
Thread 19 "render thread" received signal SIGSEGV, Segmentation fault.
0x0000644a397362bb in Tess_AddQuadStampExt (origin=0x7477066d4f80, left=left@entry=0x7476f9dff7a0, up=up@entry=0x7476f9dff7b0, color=..., s1=s1@entry=0, t1=t1@entry=0, s2=s2@entry=1, t2=t2@entry=1) at src/engine/renderer/tr_surface.cpp:235
235 tess.indexes[ tess.numIndexes ] = ndx;
Thread 19 (Thread 0x7476f9e006c0 (LWP 3582178) "render thread"):
#0 0x0000644a397362bb in Tess_AddQuadStampExt (origin=0x7477066d4f80, left=left@entry=0x7476f9dff7a0, up=up@entry=0x7476f9dff7b0, color=..., s1=s1@entry=0, t1=t1@entry=0, s2=s2@entry=1, t2=t2@entry=1) at src/engine/renderer/tr_surface.cpp:235
#1 0x0000644a39736ac2 in Tess_AddQuadStamp (color=..., up=0x7476f9dff7b0, left=0x7476f9dff7a0, origin=<optimized out>) at src/engine/renderer/tr_surface.cpp:304
#2 Tess_SurfaceSprite () at src/engine/renderer/tr_surface.cpp:633
#3 Tess_SurfaceEntity () at src/engine/renderer/tr_surface.cpp:1351
#4 0x0000644a396927c8 in RB_RenderDrawSurfaces (fromSort=fromSort@entry=shaderSort_t::SS_ENVIRONMENT_NOFOG, toSort=toSort@entry=shaderSort_t::SS_POST_PROCESS, drawSurfFilter=drawSurfFilter@entry=DRAWSURFACES_ALL) at src/engine/renderer/tr_backend.cpp:950
#5 0x0000644a396a0b30 in RB_RenderView (depthPass=<optimized out>) at src/engine/renderer/tr_backend.cpp:4542
#6 DrawViewCommand::ExecuteSelf (this=0x7477072b6234) at src/engine/renderer/tr_backend.cpp:5378
#7 0x0000644a39695599 in RB_ExecuteRenderCommands (data=<optimized out>) at src/engine/renderer/tr_backend.cpp:5590
#8 0x0000644a39695622 in RB_RenderThread () at src/engine/renderer/tr_backend.cpp:5621
#9 0x0000644a397449d6 in GLimp_RenderThreadWrapper () at src/engine/sys/sdl_glimp.cpp:236
#10 0x0000747734dde296 in ?? () from /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#11 0x0000747733e9caa4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
#12 0x0000747733f29c3c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
I reproduce it on master.
I can't repro. Which version of Pulse do you have?
Hmm, I don't think I touched any of the related code anytime recently.
I will paste the link there, with my config as well.
I just reproduced it on v0.55.2 tag anyway, so this doesn't block the release. It was already broken.
I would also be surprised if this depends on the map because AFAIK that code is only used for 2D drawing, so things like UI.
Interesting, anyway there is no urge anymore. I just noticed I had a stray r_smp 1.
With r_smp 0 I don't reproduce the crash on v0.55.2 and on master, and r_smp is disabled by default. So we don't have to fix it for the point release. It is not blocking.
I backuped my config, I will post my config and the map later when I'll have time for that.
It seems... unlikely that this is caused by material system, as there aren't any functions used by it in the call stacks posted above.