Last active
August 1, 2021 12:41
-
-
Save dogbert17/08ff059905621e64f748e603d8924bed to your computer and use it in GitHub Desktop.
SEGV in new-disp
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| dogbert@dogbert-VirtualBox:~/repos/rakudo$ gdb install/bin/moar core.moar.1000.f4e1afea0509471c9f4e9e8a321dd81a.1815842.1627821486000000000000 | |
| GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2 | |
| Copyright (C) 2020 Free Software Foundation, Inc. | |
| License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> | |
| This is free software: you are free to change and redistribute it. | |
| There is NO WARRANTY, to the extent permitted by law. | |
| Type "show copying" and "show warranty" for details. | |
| This GDB was configured as "x86_64-linux-gnu". | |
| Type "show configuration" for configuration details. | |
| For bug reporting instructions, please see: | |
| <http://www.gnu.org/software/gdb/bugs/>. | |
| Find the GDB manual and other documentation resources online at: | |
| <http://www.gnu.org/software/gdb/documentation/>. | |
| For help, type "help". | |
| Type "apropos word" to search for commands related to "word"... | |
| Reading symbols from install/bin/moar... | |
| [New LWP 1815843] | |
| [New LWP 1815842] | |
| [New LWP 1815844] | |
| [New LWP 1815846] | |
| [New LWP 1815847] | |
| [New LWP 1815845] | |
| [Thread debugging using libthread_db enabled] | |
| Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". | |
| Core was generated by `/home/dogbert/repos/rakudo/nqp/MoarVM/../../install/bin/moar --execname=/home/d'. | |
| Program terminated with signal SIGSEGV, Segmentation fault. | |
| #0 0x00007f518579ea2c in by_offset (tc=0x55697fa73a50, tss=0x25, bytecode_offset=136) at src/spesh/stats.c:120 | |
| 120 MVMuint32 n = tss->num_by_offset; | |
| [Current thread is 1 (Thread 0x7f5185025700 (LWP 1815843))] | |
| (gdb) bt | |
| #0 0x00007f518579ea2c in by_offset (tc=0x55697fa73a50, tss=0x25, bytecode_offset=136) at src/spesh/stats.c:120 | |
| #1 0x00007f518579f8b7 in incorporate_stats (tc=0x55697fa73a50, simf=0x7f5180654ea8, frame_depth=223, caller=0x7f5180654e50, sf_updated=0x7f5180000b80) at src/spesh/stats.c:335 | |
| #2 0x00007f518579fbf4 in sim_stack_pop (tc=0x55697fa73a50, sims=0x7f51806297e0, sf_updated=0x7f5180000b80) at src/spesh/stats.c:404 | |
| #3 0x00007f51857a097a in MVM_spesh_stats_update (tc=0x55697fa73a50, sl=0x7f51740a56c0, sf_updated=0x7f5180000b80, in_newly_seen=0x7f5185023290, in_updated=0x7f5185023298) at src/spesh/stats.c:616 | |
| #4 0x00007f518579d5b1 in worker (tc=0x55697fa73a50, arg_info=...) at src/spesh/worker.c:24 | |
| #5 0x00007f51856f74c2 in invoke_handler (tc=0x55697fa73a50, invokee=0x55697fa3bd80, callsite=0x7f5185e0cc80 <zero_arity_callsite>, args=0x0) at src/6model/reprs/MVMCFunction.c:42 | |
| #6 0x00007f5185687c05 in thread_initial_invoke (tc=0x55697fa73a50, data=0x55697fa75040) at src/core/threads.c:58 | |
| #7 0x00007f5185634142 in MVM_interp_run (tc=0x55697fa73a50, initial_invoke=0x7f5185687b76 <thread_initial_invoke>, invoke_data=0x55697fa75040, outer_runloop=0x0) at src/core/interp.c:180 | |
| #8 0x00007f5185687cda in start_thread (data=0x55697fa75040) at src/core/threads.c:92 | |
| #9 0x00007f51850bb609 in start_thread (arg=<optimized out>) at pthread_create.c:477 | |
| #10 0x00007f5185346293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 | |
| (gdb) l | |
| 115 /* Get the stats by offset entry, adding it if it's missing. */ | |
| 116 MVMSpeshStatsByOffset * by_offset(MVMThreadContext *tc, MVMSpeshStatsByType *tss, | |
| 117 MVMuint32 bytecode_offset) { | |
| 118 /* See if we already have it. */ | |
| 119 MVMuint32 found; | |
| 120 MVMuint32 n = tss->num_by_offset; | |
| 121 for (found = 0; found < n; found++) | |
| 122 if (tss->by_offset[found].bytecode_offset == bytecode_offset) | |
| 123 return &(tss->by_offset[found]); | |
| 124 | |
| (gdb) info threads | |
| Id Target Id Frame | |
| * 1 Thread 0x7f5185025700 (LWP 1815843) 0x00007f518579ea2c in by_offset (tc=0x55697fa73a50, tss=0x25, bytecode_offset=136) at src/spesh/stats.c:120 | |
| 2 Thread 0x7f51850ab440 (LWP 1815842) futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55697fa6fc7c) at ../sysdeps/nptl/futex-internal.h:183 | |
| 3 Thread 0x7f517e12b700 (LWP 1815844) 0x00007f518567bb9b in MVM_frame_try_return (tc=0x556983676330) at src/core/frame.c:1124 | |
| 4 Thread 0x7f517d11a700 (LWP 1815846) 0x00007f518576a818 in MVM_disp_program_run (tc=0x7f5170101a50, dp=0x7f517813afc0, record=0x7f517849fc48, spesh_cid=0, bytecode_offset=4294967295, dp_index=0) | |
| at src/disp/program.c:2566 | |
| 5 Thread 0x7f517c8ab700 (LWP 1815847) MVM_thread_id (tc=0x7f517014c500, thread_obj=0x7f51782323e0) at src/core/threads.c:224 | |
| 6 Thread 0x7f517d92a700 (LWP 1815845) 0x00007f51853043bf in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7f517d9283c0, rem=0x7f517d9283c0) | |
| at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 | |
| (gdb) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment