libTAS icon indicating copy to clipboard operation
libTAS copied to clipboard

Starbound Segmentation Fault

Open feuerball11 opened this issue 4 years ago • 3 comments

Starbound sadly goes into an Segmentation Fault.

May be related with #353

Reading symbols from /home/ignatz/.steam/steam/steamapps/common/Starbound/linux/starbound...
Signal        Stop	Print	Pass to program	Description
SIGSYS        No	No	Yes		Bad system call
SIGXCPU       No	No	Yes		CPU time limit exceeded
SIGXFSZ       No	No	Yes		File size limit exceeded
SIGUSR1       No	No	Yes		User defined signal 1
SIGUSR2       No	No	Yes		User defined signal 2
SIGPWR        No	No	Yes		Power fail/restart
SIG35         No	No	Yes		Real-time event 35
SIG36         No	No	Yes		Real-time event 36
Starting program: /home/ignatz/.local/share/Steam/steamapps/common/Starbound/linux/starbound 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Attempt 1: Couldn't connect to socket.

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7cdbefb in pthread_key_create () from /usr/bin/libtas.so
(gdb) Attempt 2: Couldn't connect to socket.
Attempt 3: Couldn't connect to socket.
Attempt 4: Couldn't connect to socket.
Attempt 5: Couldn't connect to socket.
Attempt 6: Couldn't connect to socket.
Attempt 7: Couldn't connect to socket.
Attempt 8: Couldn't connect to socket.
Attempt 9: Couldn't connect to socket.
Attempt 10: Couldn't connect to socket.
recv() returns -1 with error Invalid argument

feuerball11 avatar Jul 31 '21 18:07 feuerball11

Here is the error including the line with debug symboles:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7cdc972 in libtas::pthread_key_create (
    key=key@entry=0x1d64f68 <je_tsd_tsd>, 
    destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>)
    at tlswrappers.cpp:56
56	tlswrappers.cpp: No such file or directory.

feuerball11 avatar Jul 31 '21 19:07 feuerball11

These are the first and last lines of GDP bt:

#0  0x00007ffff7cd1e28 in libtas::debuglogstdio (lcf=lcf@entry=1073741824, fmt=fmt@entry=0x7ffff7d48cb1 "%s call.") at logging.cpp:36
#1  0x00007ffff7cdc9ea in libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:62
#2  0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#3  je_malloc_tsd_boot0 () at src/tsd.c:115
#4  0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#5  0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#6  ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#7  je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#8  0x0000000000a534d9 in operator new(unsigned long) ()
#9  0x00007ffff7cdce9c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > >::allocate (this=<optimized out>, __n=1)
    at /usr/include/c++/7/ext/new_allocator.h:111
#10 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#11 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffff7ff180) at /usr/include/c++/7/bits/stl_tree.h:588
#12 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_create_node<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffff7ff180) at /usr/include/c++/7/bits/stl_tree.h:642
#13 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_emplace_unique<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffff7ff180) at /usr/include/c++/7/bits/stl_tree.h:2351
#14 0x00007ffff7cdcac4 in std::map<unsigned int, void (*)(void*), std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::insert<std::pair<unsigned int, void (*)(void*)> > (__x=..., this=0x7fffff7ff180) at /usr/include/c++/7/bits/stl_map.h:809
#15 libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:68
#16 0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#17 je_malloc_tsd_boot0 () at src/tsd.c:115
#18 0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#19 0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#20 ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#21 je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#22 0x0000000000a534d9 in operator new(unsigned long) ()
#23 0x00007ffff7cdce9c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > >::allocate (this=<optimized out>, __n=1)
    at /usr/include/c++/7/ext/new_allocator.h:111
#24 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#25 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffff7ff2d0) at /usr/include/c++/7/bits/stl_tree.h:588
#26 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_create_node<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffff7ff2d0) at /usr/include/c++/7/bits/stl_tree.h:642
#27 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_emplace_unique<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffff7ff2d0) at /usr/include/c++/7/bits/stl_tree.h:2351
#28 0x00007ffff7cdcac4 in std::map<unsigned int, void (*)(void*), std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::insert<std::pair<unsigned int, void (*)(void*)> > (__x=..., this=0x7fffff7ff2d0) at /usr/include/c++/7/bits/stl_map.h:809
#29 libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:68
#30 0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#31 je_malloc_tsd_boot0 () at src/tsd.c:115
#32 0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#33 0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#34 ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#35 je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#36 0x0000000000a534d9 in operator new(unsigned long) ()
#37 0x00007ffff7cdce9c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > >::allocate (this=<optimized out>, __n=1)
    at /usr/include/c++/7/ext/new_allocator.h:111
#38 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#39 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffff7ff420) at /usr/include/c++/7/bits/stl_tree.h:588
[.....]
#349254 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#349255 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffffffd730) at /usr/include/c++/7/bits/stl_tree.h:588
#349256 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_create_node<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffd730) at /usr/include/c++/7/bits/stl_tree.h:642
#349257 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_emplace_unique<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffd730) at /usr/include/c++/7/bits/stl_tree.h:2351
#349258 0x00007ffff7cdcac4 in std::map<unsigned int, void (*)(void*), std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::insert<std::pair<unsigned int, void (*)(void*)> > (__x=..., this=0x7fffffffd730) at /usr/include/c++/7/bits/stl_map.h:809
#349259 libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:68
#349260 0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#349261 je_malloc_tsd_boot0 () at src/tsd.c:115
#349262 0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#349263 0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#349264 ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#349265 je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#349266 0x0000000000a534d9 in operator new(unsigned long) ()
#349267 0x00007ffff7cdce9c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > >::allocate (this=<optimized out>, __n=1) at /usr/include/c++/7/ext/new_allocator.h:111
#349268 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#349269 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffffffd880) at /usr/include/c++/7/bits/stl_tree.h:588
#349270 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_create_node<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffd880) at /usr/include/c++/7/bits/stl_tree.h:642
#349271 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_emplace_unique<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffd880) at /usr/include/c++/7/bits/stl_tree.h:2351
#349272 0x00007ffff7cdcac4 in std::map<unsigned int, void (*)(void*), std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::insert<std::pair<unsigned int, void (*)(void*)> > (__x=..., this=0x7fffffffd880) at /usr/include/c++/7/bits/stl_map.h:809
#349273 libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:68
#349274 0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#349275 je_malloc_tsd_boot0 () at src/tsd.c:115
#349276 0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#349277 0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#349278 ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#349279 je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#349280 0x0000000000a534d9 in operator new(unsigned long) ()
#349281 0x00007ffff7cdce9c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > >::allocate (this=<optimized out>, __n=1) at /usr/include/c++/7/ext/new_allocator.h:111
#349282 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#349283 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffffffd9d0) at /usr/include/c++/7/bits/stl_tree.h:588
#349284 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_create_node<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffd9d0) at /usr/include/c++/7/bits/stl_tree.h:642
#349285 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_emplace_unique<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffd9d0) at /usr/include/c++/7/bits/stl_tree.h:2351
#349286 0x00007ffff7cdcac4 in std::map<unsigned int, void (*)(void*), std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::insert<std::pair<unsigned int, void (*)(void*)> > (__x=..., this=0x7fffffffd9d0) at /usr/include/c++/7/bits/stl_map.h:809
#349287 libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:68
#349288 0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#349289 je_malloc_tsd_boot0 () at src/tsd.c:115
#349290 0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#349291 0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#349292 ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#349293 je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#349294 0x0000000000a534d9 in operator new(unsigned long) ()
#349295 0x00007ffff7cdce9c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > >::allocate (this=<optimized out>, __n=1) at /usr/include/c++/7/ext/new_allocator.h:111
#349296 std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void (*)(void*)> > > >::allocate (__a=..., __n=1) at /usr/include/c++/7/bits/alloc_traits.h:436
#349297 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_get_node (this=this@entry=0x7fffffffdb20) at /usr/include/c++/7/bits/stl_tree.h:588
#349298 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_create_node<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffdb20) at /usr/include/c++/7/bits/stl_tree.h:642
#349299 std::_Rb_tree<unsigned int, std::pair<unsigned int const, void (*)(void*)>, std::_Select1st<std::pair<unsigned int const, void (*)(void*)> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::_M_emplace_unique<std::pair<unsigned int, void (*)(void*)> > (this=this@entry=0x7fffffffdb20) at /usr/include/c++/7/bits/stl_tree.h:2351
#349300 0x00007ffff7cdcac4 in std::map<unsigned int, void (*)(void*), std::less<unsigned int>, std::allocator<std::pair<unsigned int const, void (*)(void*)> > >::insert<std::pair<unsigned int, void (*)(void*)> > (__x=..., this=0x7fffffffdb20) at /usr/include/c++/7/bits/stl_map.h:809
#349301 libtas::pthread_key_create (key=key@entry=0x1d64f68 <je_tsd_tsd>, destr_function=destr_function@entry=0x15a3890 <je_tsd_cleanup>) at tlswrappers.cpp:68
#349302 0x00000000015a3a2f in je_tsd_boot0 () at include/jemalloc/internal/tsd.h:658
#349303 je_malloc_tsd_boot0 () at src/tsd.c:115
#349304 0x000000000157424b in malloc_init_hard () at src/jemalloc.c:1415
#349305 0x0000000001575af5 in malloc_init () at src/jemalloc.c:302
#349306 ialloc_body (slow_path=true, usize=<synthetic pointer>, tsdn=<synthetic pointer>, zero=false, size=<optimized out>) at src/jemalloc.c:1498
#349307 je_malloc (size=<optimized out>) at src/jemalloc.c:1562
#349308 0x0000000000a534d9 in operator new(unsigned long) ()
#349309 0x00007ffff7ccb27f in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*> (this=this@entry=0x7fffffffdc90, __beg=0x7ffff7fc7140 "/usr/bin/libtas.so", __end=<optimized out>) at /usr/include/c++/7/bits/basic_string.tcc:219
#349310 0x00007ffff7ccbb2b in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char const*> (__end=<optimized out>, __beg=<optimized out>, this=0x7fffffffdc90) at /usr/include/c++/7/bits/basic_string.h:236
#349311 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*> (__end=<optimized out>, __beg=<optimized out>, this=0x7fffffffdc90) at /usr/include/c++/7/bits/basic_string.h:255
#349312 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string (__a=..., __s=<optimized out>, this=0x7fffffffdc90) at /usr/include/c++/7/bits/basic_string.h:511
#349313 libtas::find_sym (name=name@entry=0x7ffff6e26daa "pthread_create", original=original@entry=false) at dlhook.cpp:221
#349314 0x00007ffff7ccbd42 in libtas::dlsym (handle=0x0, name=<optimized out>) at dlhook.cpp:335
#349315 0x00007ffff6dd7e6e in ?? () from /lib/x86_64-linux-gnu/libGLdispatch.so.0
#349316 0x00007ffff6dd625d in ?? () from /lib/x86_64-linux-gnu/libGLdispatch.so.0
#349317 0x00007ffff7fe0b8a in ?? () from /lib64/ld-linux-x86-64.so.2
#349318 0x00007ffff7fe0c91 in ?? () from /lib64/ld-linux-x86-64.so.2
#349319 0x00007ffff7fd013a in ?? () from /lib64/ld-linux-x86-64.so.2

feuerball11 avatar Aug 01 '21 17:08 feuerball11

Indeed there's another issue with jemalloc, I need to grab a game that uses it.

clementgallet avatar Nov 23 '21 11:11 clementgallet