Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zest crash while adjusting a voice amplitude envelope - part 1 voices 1, 2 and 3 all playing #344

Closed
zynmuse opened this issue Feb 17, 2022 · 2 comments

Comments

@zynmuse
Copy link

zynmuse commented Feb 17, 2022

Zest crashes are now very rare!!
FYI I have included a trace log. Any debugging code has been lost with recent updates to my working system.
I doubt I can recreate this but maybe worth checking the code lines from the stack in case there is an obvious problem!

Zest crash. 22-Feb-2022
I was using part 1 with voices 1,2 and 3 enabled.
I was adjusting the attack envelope for a voice - (I think it was voice 2).
Zest UI crashed with trace as below.

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff77db8e6 in mrb_obj_value (p=0x0) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/include/mruby/value.h:356
356	  SET_OBJ_VALUE(v, (struct RBasic*)p);
#0  0x00007ffff77db8e6 in mrb_obj_value (p=0x0)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/include/mruby/value.h:356
#1  mrb_vformat (mrb=mrb@entry=0x5555559b8560, format=format@entry=0x7ffff78ca6c3 "can't convert %Y into %s", 
    ap=ap@entry=0x7fffffff5490)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/error.c:340
#2  0x00007ffff77db424 in raise_va (argv=0x0, argc=0, ap=0x7fffffff5490, 
    fmt=0x7ffff78ca6c3 "can't convert %Y into %s", c=0x5555559c5e20, mrb=0x5555559b8560)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/error.c:394
#3  mrb_raisef (mrb=mrb@entry=0x5555559b8560, c=0x5555559c5e20, 
    fmt=fmt@entry=0x7ffff78ca6c3 "can't convert %Y into %s")
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/error.c:410
#4  0x00007ffff77ddd3a in convert_type (raise=true, method=897, tname=0x7ffff78ca71d "Float", val=..., 
    mrb=0x5555559b8560)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/object.c:335
#5  mrb_type_convert (mrb=0x5555559b8560, val=..., type=type@entry=MRB_TT_FLOAT, method=method@entry=897)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/object.c:351
--Type <RET> for more, q to quit, c to continue without paging--
#6  0x00007ffff77f0e9d in mrb_as_float (mrb=<optimized out>, val=...) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/numeric.c:37
#7  0x00007ffff77f17c3 in int_plus (x=..., x=..., y=..., mrb=0x5555559b8560) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/numeric.c:1482
#8  int_add (mrb=0x5555559b8560, self=...) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/numeric.c:1525
#9  0x00007ffff77ff42d in mrb_vm_exec (mrb=<optimized out>, proc=<optimized out>, pc=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:1515
#10 0x00007ffff78052c6 in mrb_vm_run (mrb=mrb@entry=0x5555559b8560, proc=<optimized out>, self=..., stack_keep=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:1036
#11 0x00007ffff780591d in mrb_run (self=..., proc=0x7ffff79ce680 <call_proc>, mrb=0x5555559b8560)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:2954
#12 mrb_funcall_with_block (mrb=mrb@entry=0x5555559b8560, self=..., mid=643, argc=<optimized out>, argc@entry=1, argv=0x7fffffff5cc0, blk=...)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:511
#13 0x00007ffff7805beb in mrb_funcall_argv (mrb=mrb@entry=0x5555559b8560, self=..., mid=<optimized out>, argc=argc@entry=1, argv=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:522
#14 0x00007ffff7805cf5 in mrb_funcall (mrb=0x5555559b8560, self=..., name=name@entry=0x7ffff798e581 "call", argc=argc@entry=1)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:372
#15 0x00007ffff785c5f7 in remote_cb_fvec (cb=<optimized out>, msg=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/src/mruby-widget-lib/src/gem.c:797
#16 remote_cb (msg=<optimized out>, data=0x5555566c7ab0) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/src/mruby-widget-lib/src/gem.c:840
#17 0x00007ffff78bd8c3 in run_callbacks (br=br@entry=0x555555aa7ab0, line=line@entry=0x55555a83f3f0) at src/bridge.c:600
#18 0x00007ffff78bdc00 in cache_set_vector (br=br@entry=0x555555aa7ab0, uri=uri@entry=0x55555e4395d0 "/part0/kit0/adpars/VoicePar1/AmpEnvelope/out", types=types@entry=0x555558f2e350 "ff", 
    args=args@entry=0x5555593ed130) at src/bridge.c:180
#19 0x00007ffff78bf6ec in br_recv (msg=0x55555e4395d0 "/part0/kit0/adpars/VoicePar1/AmpEnvelope/out", br=0x555555aa7ab0) at src/bridge.c:840
#20 br_recv (br=0x555555aa7ab0, msg=0x55555e4395d0 "/part0/kit0/adpars/VoicePar1/AmpEnvelope/out") at src/bridge.c:806
#21 0x00007ffff78bf87f in on_read (req=0x555555aa7ab8, nread=<optimized out>, buf=0x7fffffffa070, addr=<optimized out>, flags=<optimized out>) at src/bridge.c:277
#22 0x00007ffff767234d in ?? () from /usr/lib/libuv.so.1
#23 0x00007ffff7676266 in ?? () from /usr/lib/libuv.so.1
#24 0x00007ffff7662897 in uv_run () from /usr/lib/libuv.so.1
#25 0x00007ffff78bfc26 in br_tick (br=0x555555aa7ab0) at src/bridge.c:864
#26 0x00007ffff785b7b2 in mrb_remote_tick (mrb=<optimized out>, self=...) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/src/mruby-widget-lib/src/gem.c:471
#27 0x00007ffff77ff42d in mrb_vm_exec (mrb=<optimized out>, proc=<optimized out>, pc=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:1515
#28 0x00007ffff78052c6 in mrb_vm_run (mrb=mrb@entry=0x5555559b8560, proc=<optimized out>, self=..., stack_keep=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:1036
#29 0x00007ffff780591d in mrb_run (self=..., proc=0x555555a2d300, mrb=0x5555559b8560) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:2954
#30 mrb_funcall_with_block (mrb=0x5555559b8560, self=..., mid=3393, argc=<optimized out>, argv=0x7fffffffdbb0, blk=...)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:511
#31 0x00007ffff7805b62 in mrb_funcall_with_block (mrb=mrb@entry=0x5555559b8560, self=..., mid=3393, argc=argc@entry=0, argv=0x7fffffffdbb0, blk=...)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:431
#32 0x00007ffff7805beb in mrb_funcall_argv (mrb=mrb@entry=0x5555559b8560, self=..., mid=<optimized out>, argc=argc@entry=0, argv=<optimized out>)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:522
#33 0x00007ffff7805cf5 in mrb_funcall (mrb=0x5555559b8560, self=..., name=name@entry=0x7ffff78d1d4a "tick_remote", argc=argc@entry=0)
    at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/mruby/src/vm.c:372
#34 0x00007ffff7858db9 in zest_tick (z=0x5555557e77b0) at /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/src/mruby-widget-lib/src/api.c:350
#35 0x00005555555583f6 in main ()
Breakpoint 1 at 0x7ffff7858220: file /JohnsMounts/PDevelopmentB/ZynAddSubFx_SourceCode/master/src/mruby-zest-build/src/mruby-widget-lib/src/api.c, line 47.
(gdb) 
@fundamental
Copy link
Member

Good to know they're more rare. Still no idea how a null pointer is making its way through the mruby VM as I haven't been able to replicate the same issue locally.

@pgervais
Copy link
Collaborator

pgervais commented Apr 8, 2023

I'm going to close this issue for the sake of reducing the number of open issues, since it hasn't possible to reproduce that crash so far. From the stack trace it also looks like a bug in mruby, which may have been fixed upstream already.

@pgervais pgervais closed this as completed Apr 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants