Skip to content

Instantly share code, notes, and snippets.

@CapsAdmin
Created June 5, 2016 16:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save CapsAdmin/fc38ba10ecd75e1bc3934a386030895d to your computer and use it in GitHub Desktop.
Save CapsAdmin/fc38ba10ecd75e1bc3934a386030895d to your computer and use it in GitHub Desktop.
luajit: lj_obj.h:873: setgcV: Assertion `!((((uint32_t)((o)->it64 >> 47)) - ((~4u)+1)) > ((~13u) - ((~4u)+1))) || ((~((uint32_t)((o)->it64 >> 47)) == ((GCobj *)((((o)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1)))->gch.gct) && !((((GCobj *)((((o)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1))))->gch.marked & ((((global_State *)(void *)(L->glref).ptr64))->gc.currentwhite ^ (0x01 | 0x02)) & (0x01 | 0x02)))' failed.
Thread 1 "luajit" received signal SIGABRT, Aborted.
0x00007ffff7320418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x00007ffff7320418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1 0x00007ffff732201a in __GI_abort () at abort.c:89
#2 0x00007ffff7318bd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x475820 "!((((uint32_t)((o)->it64 >> 47)) - ((~4u)+1)) > ((~13u) - ((~4u)+1))) || ((~((uint32_t)((o)->it64 >> 47)) == ((GCobj *)((((o)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1)))->gch.gct) && !((((GCobj *)((("..., file=file@entry=0x475698 "lj_obj.h", line=line@entry=873, function=function@entry=0x47e8b1 <__PRETTY_FUNCTION__.3545> "setgcV") at assert.c:92
#3 0x00007ffff7318c82 in __GI___assert_fail (assertion=assertion@entry=0x475820 "!((((uint32_t)((o)->it64 >> 47)) - ((~4u)+1)) > ((~13u) - ((~4u)+1))) || ((~((uint32_t)((o)->it64 >> 47)) == ((GCobj *)((((o)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1)))->gch.gct) && !((((GCobj *)((("..., file=file@entry=0x475698 "lj_obj.h", line=line@entry=873, function=function@entry=0x47e8b1 <__PRETTY_FUNCTION__.3545> "setgcV") at assert.c:101
#4 0x0000000000434778 in setgcV (it=<optimized out>, v=<optimized out>, o=<optimized out>, L=<optimized out>) at lj_obj.h:873
#5 snap_restoreval (J=<optimized out>, T=<optimized out>, ex=<optimized out>, snapno=<optimized out>, rfilt=<optimized out>, ref=<optimized out>, o=0x7fffef4fbe50) at lj_snap.c:641
#6 0x00000000004363fb in lj_snap_restore (J=<optimized out>, exptr=0x7fffffffda30) at lj_snap.c:867
#7 0x000000000041a77b in trace_exit_cp (L=<optimized out>, dummy=<optimized out>, ud=0x7fffffffd9d0) at lj_trace.c:773
#8 0x0000000000427b08 in lj_vm_cpcall ()
#9 0x000000000041c694 in lj_trace_exit (J=0x7ffff7fd6678, exptr=0x7fffffffda30) at lj_trace.c:843
#10 0x000000000042972b in lj_vm_exit_handler ()
#11 0x8000000000000000 in ?? ()
#12 0xc0764b52e0000000 in ?? ()
#13 0x405eb1b860000000 in ?? ()
#14 0x0000000000000000 in ?? ()
0x000000000043473f in setgcV (it=<optimized out>, v=<optimized out>, o=<optimized out>, L=<optimized out>) at lj_obj.h:873
873 setgcVraw(o, v, it); tvchecklive(L, o);
(gdb) bt
#0 0x000000000043473f in setgcV (it=<optimized out>, v=<optimized out>, o=<optimized out>, L=<optimized out>) at lj_obj.h:873
#1 snap_restoreval (J=J@entry=0x7ffff7fd6678, T=T@entry=0x7ffff70fd1b0, ex=ex@entry=0x7fffffffda00, snapno=snapno@entry=6, rfilt=rfilt@entry=0, ref=<optimized out>, o=0x7ffff716c870) at lj_snap.c:641
#2 0x00000000004363fb in lj_snap_restore (J=<optimized out>, exptr=0x7fffffffda00) at lj_snap.c:867
#3 0x000000000041a77b in trace_exit_cp (L=<optimized out>, dummy=<optimized out>, ud=0x7fffffffd9a0) at lj_trace.c:773
#4 0x0000000000427b08 in lj_vm_cpcall ()
#5 0x000000000041c694 in lj_trace_exit (J=0x7ffff7fd6678, exptr=0x7fffffffda00) at lj_trace.c:843
#6 0x000000000042972b in lj_vm_exit_handler ()
#7 0x41a0000002000000 in ?? ()
#8 0xbe405c610ca86c39 in ?? ()
#9 0x3c7abc9e3b398000 in ?? ()
#10 0x0000000000000000 in ?? ()
-- if i use default jit option but increase maxtrace to 5000 i get this consistenly
Program received signal SIGSEGV, Segmentation fault.
0x000000000fa8ae3b in TRACE_51 () at (string):9
9 (string): No such file or directory.
(gdb) bt
#0 0x000000000fa8ae3b in TRACE_51 () at (string):9
#1 0x0000000000411dd4 in lua_pcall (L=L@entry=0x7ffff7fd6378, nargs=nargs@entry=0, nresults=-134388776, errfunc=errfunc@entry=2) at lj_api.c:1055
#2 0x0000000000404580 in docall (L=0x7ffff7fd6378, narg=0, clear=0) at luajit.c:121
#3 0x0000000000405476 in handle_script (n=<optimized out>, argv=<optimized out>, L=<optimized out>) at luajit.c:288
#4 pmain (L=0x7ffff7fd6378) at luajit.c:537
#5 0x0000000000427712 in lj_BC_FUNCC ()
#6 0x0000000000411eb9 in lua_cpcall (L=L@entry=0x7ffff7fd6378, func=func@entry=0x404ba0 <pmain>, ud=ud@entry=0x0) at lj_api.c:1079
#7 0x0000000000404096 in main (argc=2, argv=0x7fffffffddc8) at luajit.c:565
luajit: lj_record.c:111: rec_check_slots: Assertion `((((GCobj *)(((((tv)-1)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1)))))->gch.gct == ~(~8u)' failed.
#0 0x00007ffff7320418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1 0x00007ffff732201a in __GI_abort () at abort.c:89
#2 0x00007ffff7318bd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x47f158 "((((GCobj *)(((((tv)-1)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1)))))->gch.gct == ~(~8u)", file=file@entry=0x47e954 "lj_record.c", line=line@entry=111, function=function@entry=0x480060 <__PRETTY_FUNCTION__.5890> "rec_check_slots") at assert.c:92
#3 0x00007ffff7318c82 in __GI___assert_fail (assertion=assertion@entry=0x47f158 "((((GCobj *)(((((tv)-1)->gcr).gcptr64) & (((uint64_t)1 << 47) - 1)))))->gch.gct == ~(~8u)", file=file@entry=0x47e954 "lj_record.c", line=line@entry=111, function=function@entry=0x480060 <__PRETTY_FUNCTION__.5890> "rec_check_slots") at assert.c:101
#4 0x000000000043c76f in rec_check_slots (J=0x7ffff7fd6678) at lj_record.c:111
#5 lj_record_ins (J=0x7ffff7fd6678) at lj_record.c:2036
#6 0x000000000041b828 in trace_state (L=0x7ffff7fd6378, dummy=<optimized out>, ud=0x7ffff7fd6678) at lj_trace.c:651
#7 0x0000000000427b08 in lj_vm_cpcall ()
#8 0x000000000041c53a in lj_trace_ins (J=0x7ffff7fd6678, pc=<optimized out>) at lj_trace.c:710
#9 0x000000000040a39c in lj_dispatch_ins (L=0x7ffff7fd6378, pc=0x7ffff7f89f44) at lj_dispatch.c:424
#10 0x00000000004294c8 in lj_vm_inshook ()
#11 0x0000000000411dd4 in lua_pcall (L=L@entry=0x7ffff7fd6378, nargs=nargs@entry=0, nresults=-1, errfunc=errfunc@entry=2) at lj_api.c:1055
#12 0x0000000000404580 in docall (L=0x7ffff7fd6378, narg=0, clear=0) at luajit.c:121
#13 0x0000000000405476 in handle_script (n=<optimized out>, argv=<optimized out>, L=<optimized out>) at luajit.c:288
#14 pmain (L=0x7ffff7fd6378) at luajit.c:537
#15 0x0000000000427712 in lj_BC_FUNCC ()
#16 0x0000000000411eb9 in lua_cpcall (L=L@entry=0x7ffff7fd6378, func=func@entry=0x404ba0 <pmain>, ud=ud@entry=0x0) at lj_api.c:1079
#17 0x0000000000404096 in main (argc=2, argv=0x7fffffffddc8) at luajit.c:565
Program received signal SIGSEGV, Segmentation fault.
0x000000000043b877 in rec_check_slots (J=0x7ffff7fd6678) at lj_record.c:112
112 BCReg delta = (BCReg)(tv - frame_prev(tv));
(gdb) bt
#0 0x000000000043b877 in rec_check_slots (J=0x7ffff7fd6678) at lj_record.c:112
#1 lj_record_ins (J=J@entry=0x7ffff7fd6678) at lj_record.c:2036
#2 0x000000000041b828 in trace_state (L=0x7ffff7fd6378, dummy=<optimized out>, ud=0x7ffff7fd6678) at lj_trace.c:651
#3 0x0000000000427b08 in lj_vm_cpcall ()
#4 0x000000000041c53a in lj_trace_ins (J=J@entry=0x7ffff7fd6678, pc=pc@entry=0x7ffff72526ac) at lj_trace.c:710
#5 0x000000000040a39c in lj_dispatch_ins (L=0x7ffff7fd6378, pc=0x7ffff72526b0) at lj_dispatch.c:424
#6 0x00000000004294c8 in lj_vm_inshook ()
#7 0x0000000000411dd4 in lua_pcall (L=L@entry=0x7ffff7fd6378, nargs=nargs@entry=0, nresults=-1, errfunc=errfunc@entry=2) at lj_api.c:1055
#8 0x0000000000404580 in docall (L=0x7ffff7fd6378, narg=0, clear=0) at luajit.c:121
#9 0x0000000000405476 in handle_script (n=<optimized out>, argv=<optimized out>, L=<optimized out>) at luajit.c:288
#10 pmain (L=0x7ffff7fd6378) at luajit.c:537
#11 0x0000000000427712 in lj_BC_FUNCC ()
#12 0x0000000000411eb9 in lua_cpcall (L=L@entry=0x7ffff7fd6378, func=func@entry=0x404ba0 <pmain>, ud=ud@entry=0x0) at lj_api.c:1079
#13 0x0000000000404096 in main (argc=2, argv=0x7fffffffddc8) at luajit.c:565
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment