strace output:
poll([{fd=11, events=POLLIN|POLLPRI}], 1, 1000) = 1 ([{fd=11, revents=POLLIN|POLLPRI}])
ioctl(11, 0xc0104652, 0x7fffdf367a00) = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
read(4, "\6\0o\0&\r\260\3Z\1\0\0\3\0\240\5\0\0\0\0\253\3\341\0015\1\r\1\20\4\1\0"..., 4096) = 64
read(4, 0x27ddff4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(4, 0x27ddff4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(4, 0x27ddff4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGINT, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, 8) = 0
rt_sigaction(SIGINT, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, 8) = 0
getpid() = 6452
poll([{fd=11, events=POLLIN|POLLPRI}], 1, 1000) = 1 ([{fd=11, revents=POLLIN|POLLPRI}])
ioctl(11, 0xc0104652, 0x7fffdf367a00) = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
read(4, "\6\0o\0006\r\260\3Z\1\0\0\3\0\240\5\0\0\0\0\253\3\336\0015\1\n\1\20\4\1\0"..., 4096) = 64
read(4, 0x27ddff4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(4, 0x27ddff4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(4, 0x27ddff4, 4096) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGINT, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, 8) = 0
rt_sigaction(SIGINT, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, {0x4d9820, [], SA_RESTORER, 0x7fb6ef9f68f0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
select(0, NULL, NULL, NULL, {0, 1000}) = 0 (Timeout)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
getpid() = 6452
poll([{fd=11, events=POLLIN|POLLPRI}], 1, 1000) = 1 ([{fd=11, revents=POLLIN|POLLPRI}])
ioctl(11, 0xc0104652, 0x7fffdf367a00) = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
brk(0x301a000) = 0x301a000
brk(0x308e000) = 0x308e000
mmap(NULL, 819200, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb6d7820000
mremap(0x7fb6d7820000, 819200, 823296, MREMAP_MAYMOVE) = 0x7fb6d7757000
mremap(0x7fb6d7757000, 823296, 827392, MREMAP_MAYMOVE) = 0x7fb6d7757000
mremap(0x7fb6d7757000, 827392, 831488, MREMAP_MAYMOVE) = 0x7fb6d7757000
mremap(0x7fb6d7757000, 831488, 835584, MREMAP_MAYMOVE) = 0x7fb6d7757000
mremap(0x7fb6d7757000, 835584, 839680, MREMAP_MAYMOVE) = 0x7fb6d7757000
before the mmap(NULL… line it loops the content above that line. as soon as it hangs. it’s printing endless numberse of thet mremap.
gdb brings up different results since it doesnt really crash.
the GeomVertexWriter line seems to appear quite often when i killall the thread.
Program received signal SIGTERM, Terminated.
0x00007ffff43f7a50 in GeomVertexWriter::inc_add_pointer() () from /usr/lib64/panda3d/libpanda.so
(gdb) bt
#0 0x00007ffff43f7a50 in GeomVertexWriter::inc_add_pointer() () from /usr/lib64/panda3d/libpanda.so
#1 0x00007ffff4947524 in GeomPrimitive::make_points() const () from /usr/lib64/panda3d/libpanda.so
#2 0x00007ffff4947f30 in Geom::make_points_in_place() () from /usr/lib64/panda3d/libpanda.so
#3 0x00007ffff446c4f3 in CullableObject::munge_geom(GraphicsStateGuardianBase*, GeomMunger*, CullTraverser const*, bool) () from /usr/lib64/panda3d/libpanda.so
#4 0x00007ffff447a439 in CullResult::add_object(CullableObject*, CullTraverser const*) () from /usr/lib64/panda3d/libpanda.so
#5 0x00007ffff446d7b6 in GeomNode::add_for_draw(CullTraverser*, CullTraverserData&) () from /usr/lib64/panda3d/libpanda.so
#6 0x00007ffff4480b33 in CullTraverser::traverse_below(CullTraverserData&) () from /usr/lib64/panda3d/libpanda.so
#7 0x00007ffff4480a6a in CullTraverser::traverse_below(CullTraverserData&) () from /usr/lib64/panda3d/libpanda.so
#8 0x00007ffff4480a6a in CullTraverser::traverse_below(CullTraverserData&) () from /usr/lib64/panda3d/libpanda.so
#9 0x00007ffff4480a6a in CullTraverser::traverse_below(CullTraverserData&) () from /usr/lib64/panda3d/libpanda.so
#10 0x00007ffff44810d8 in CullTraverser::traverse(NodePath const&) () from /usr/lib64/panda3d/libpanda.so
#11 0x00007ffff484e4df in GraphicsEngine::do_cull(CullHandler*, SceneSetup*, GraphicsStateGuardian*, Thread*) () from /usr/lib64/panda3d/libpanda.so
#12 0x00007ffff4855157 in GraphicsEngine::cull_to_bins(GraphicsOutput*, DisplayRegion*, Thread*) () from /usr/lib64/panda3d/libpanda.so
#13 0x00007ffff4855829 in GraphicsEngine::cull_to_bins(ov_set<PointerTo<GraphicsOutput>, IndirectLess<GraphicsOutput> > const&, Thread*) () from /usr/lib64/panda3d/libpanda.so
#14 0x00007ffff4856038 in GraphicsEngine::WindowRenderer::do_frame(GraphicsEngine*, Thread*) () from /usr/lib64/panda3d/libpanda.so
#15 0x00007ffff4856de7 in GraphicsEngine::render_frame() () from /usr/lib64/panda3d/libpanda.so
#16 0x00007ffff487e2e5 in ?? () from /usr/lib64/panda3d/libpanda.so
#17 0x00000000004a7c5e in PyEval_EvalFrameEx ()
#18 0x00000000004a9671 in PyEval_EvalCodeEx ()
#19 0x0000000000537620 in ?? ()
#20 0x000000000041f0c7 in PyObject_Call ()
#21 0x0000000000427dff in ?? ()
#22 0x000000000041f0c7 in PyObject_Call ()
#23 0x00007ffff48b7a5d in Thread::call_python_func(_object*, _object*) () from /usr/lib64/panda3d/libpanda.so
#24 0x00007ffff48ceb32 in PythonTask::do_python_task() () from /usr/lib64/panda3d/libpanda.so
---Type <return> to continue, or q <return> to quit---
#25 0x00007ffff48d44bb in AsyncTask::unlock_and_do_task() () from /usr/lib64/panda3d/libpanda.so
#26 0x00007ffff48de101 in AsyncTaskChain::service_one_task(AsyncTaskChain::AsyncTaskChainThread*) () from /usr/lib64/panda3d/libpanda.so
#27 0x00007ffff48dec19 in AsyncTaskChain::do_poll() () from /usr/lib64/panda3d/libpanda.so
#28 0x00007ffff48dedb1 in AsyncTaskManager::poll() () from /usr/lib64/panda3d/libpanda.so
#29 0x00007ffff48eff55 in ?? () from /usr/lib64/panda3d/libpanda.so
#30 0x00000000004a7c5e in PyEval_EvalFrameEx ()
#31 0x00000000004a8550 in PyEval_EvalFrameEx ()
#32 0x00000000004a9671 in PyEval_EvalCodeEx ()
#33 0x00000000004a7809 in PyEval_EvalFrameEx ()
#34 0x00000000004a8550 in PyEval_EvalFrameEx ()
#35 0x00000000004a9671 in PyEval_EvalCodeEx ()
#36 0x00000000004a9742 in PyEval_EvalCode ()
#37 0x00000000004c9a0e in PyRun_FileExFlags ()
#38 0x00000000004c9c24 in PyRun_SimpleFileExFlags ()
#39 0x000000000041a7ff in Py_Main ()
#40 0x00007ffff69d9c4d in __libc_start_main () from /lib/libc.so.6
#41 0x00000000004199f9 in _start ()
(gdb)
i dont think my panda build has debug symbols enabled.