Re: [LAD] PHASEX-0.11.0 released

From: William Weston <weston@email-addr-hidden>
Date: Wed Aug 08 2007 - 11:15:04 EEST

On Wed, 8 Aug 2007, Nedko Arnaudov wrote:

> Nedko Arnaudov <nedko@email-addr-hidden> writes:
>
> > William Weston <weston@email-addr-hidden> writes:
> >
> >> Version 0.11.0 of the [P]hase [H]armonic [A]dvanced [S]ynthesis
> >> [EX]periment is ready for download (source tarball and FC6 RPMs) at:
> >
> > First, thanks!
> >
> > I get segfault too. It happends on start, GUI appears and i get into
> > gdb. Here is backtrace I got:
> >
> > # gdb phasex
> > GNU gdb 6.4
> > Copyright 2005 Free Software Foundation, Inc.
> > GDB is free software, covered by the GNU General Public License, and you are
> > welcome to change it and/or distribute copies of it under certain conditions.
> > Type "show copying" to see the conditions.
> > There is absolutely no warranty for GDB. Type "show warranty" for details.
> > This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".
> >
> > (gdb) r
> > Starting program: /usr/bin/phasex
> > [Thread debugging using libthread_db enabled]
> > [New Thread -1220326928 (LWP 13571)]
> > [New Thread -1220330576 (LWP 13574)]
> > [New Thread -1229218896 (LWP 13576)]
> > [New Thread -1237611600 (LWP 13577)]
> > [New Thread -1258234960 (LWP 13578)]
> >
> > Program received signal SIGSEGV, Segmentation fault.
> > [Switching to Thread -1258234960 (LWP 13578)]
> > engine_thread (arg=0x0) at engine.c:961
> > 961 tmp_1 = part.delay_buf[2 * part.delay_read_index];
> > (gdb) bt
> > #0 engine_thread (arg=0x0) at engine.c:961
> > #1 0xb7e2b3dd in start_thread (arg=0xb500dbb0) at pthread_create.c:261
> > #2 0xb773ec8e in clone () from /lib/libc.so.6
> >
> > I see it is built with -O3, i'll check if -O0 will fix it
>
> -O0 does not help
>
> here is output of "part":
>
> (gdb) p part
> $1 = {keylist = {{next = 0x0, midi_key = 0}, {next = 0x0, midi_key = 1}, {next = 0x0, midi_key = 2}, {next = 0x0, midi_key = 3}, {next = 0x0,
> midi_key = 4}, {next = 0x0, midi_key = 5}, {next = 0x0, midi_key = 6}, {next = 0x0, midi_key = 7}, {next = 0x0, midi_key = 8}, {next = 0x0,
> midi_key = 9}, {next = 0x0, midi_key = 10}, {next = 0x0, midi_key = 11}, {next = 0x0, midi_key = 12}, {next = 0x0, midi_key = 13}, {next = 0x0,
> midi_key = 14}, {next = 0x0, midi_key = 15}, {next = 0x0, midi_key = 16}, {next = 0x0, midi_key = 17}, {next = 0x0, midi_key = 18}, {next = 0x0,
> midi_key = 19}, {next = 0x0, midi_key = 20}, {next = 0x0, midi_key = 21}, {next = 0x0, midi_key = 22}, {next = 0x0, midi_key = 23}, {next = 0x0,
> midi_key = 24}, {next = 0x0, midi_key = 25}, {next = 0x0, midi_key = 26}, {next = 0x0, midi_key = 27}, {next = 0x0, midi_key = 28}, {next = 0x0,
> midi_key = 29}, {next = 0x0, midi_key = 30}, {next = 0x0, midi_key = 31}, {next = 0x0, midi_key = 32}, {next = 0x0, midi_key = 33}, {next = 0x0,
> midi_key = 34}, {next = 0x0, midi_key = 35}, {next = 0x0, midi_key = 36}, {next = 0x0, midi_key = 37}, {next = 0x0, midi_key = 38}, {next = 0x0,
> midi_key = 39}, {next = 0x0, midi_key = 40}, {next = 0x0, midi_key = 41}, {next = 0x0, midi_key = 42}, {next = 0x0, midi_key = 43}, {next = 0x0,
> midi_key = 44}, {next = 0x0, midi_key = 45}, {next = 0x0, midi_key = 46}, {next = 0x0, midi_key = 47}, {next = 0x0, midi_key = 48}, {next = 0x0,
> midi_key = 49}, {next = 0x0, midi_key = 50}, {next = 0x0, midi_key = 51}, {next = 0x0, midi_key = 52}, {next = 0x0, midi_key = 53}, {next = 0x0,
> midi_key = 54}, {next = 0x0, midi_key = 55}, {next = 0x0, midi_key = 56}, {next = 0x0, midi_key = 57}, {next = 0x0, midi_key = 58}, {next = 0x0,
> midi_key = 59}, {next = 0x0, midi_key = 60}, {next = 0x0, midi_key = 61}, {next = 0x0, midi_key = 62}, {next = 0x0, midi_key = 63}, {next = 0x0,
> midi_key = 64}, {next = 0x0, midi_key = 65}, {next = 0x0, midi_key = 66}, {next = 0x0, midi_key = 67}, {next = 0x0, midi_key = 68}, {next = 0x0,
> midi_key = 69}, {next = 0x0, midi_key = 70}, {next = 0x0, midi_key = 71}, {next = 0x0, midi_key = 72}, {next = 0x0, midi_key = 73}, {next = 0x0,
> midi_key = 74}, {next = 0x0, midi_key = 75}, {next = 0x0, midi_key = 76}, {next = 0x0, midi_key = 77}, {next = 0x0, midi_key = 78}, {next = 0x0,
> midi_key = 79}, {next = 0x0, midi_key = 80}, {next = 0x0, midi_key = 81}, {next = 0x0, midi_key = 82}, {next = 0x0, midi_key = 83}, {next = 0x0,
> midi_key = 84}, {next = 0x0, midi_key = 85}, {next = 0x0, midi_key = 86}, {next = 0x0, midi_key = 87}, {next = 0x0, midi_key = 88}, {next = 0x0,
> midi_key = 89}, {next = 0x0, midi_key = 90}, {next = 0x0, midi_key = 91}, {next = 0x0, midi_key = 92}, {next = 0x0, midi_key = 93}, {next = 0x0,
> midi_key = 94}, {next = 0x0, midi_key = 95}, {next = 0x0, midi_key = 96}, {next = 0x0, midi_key = 97}, {next = 0x0, midi_key = 98}, {next = 0x0,
> midi_key = 99}, {next = 0x0, midi_key = 100}, {next = 0x0, midi_key = 101}, {next = 0x0, midi_key = 102}, {next = 0x0, midi_key = 103}, {next = 0x0,
> midi_key = 104}, {next = 0x0, midi_key = 105}, {next = 0x0, midi_key = 106}, {next = 0x0, midi_key = 107}, {next = 0x0, midi_key = 108}, {next = 0x0,
> midi_key = 109}, {next = 0x0, midi_key = 110}, {next = 0x0, midi_key = 111}, {next = 0x0, midi_key = 112}, {next = 0x0, midi_key = 113}, {next = 0x0,
> midi_key = 114}, {next = 0x0, midi_key = 115}, {next = 0x0, midi_key = 116}, {next = 0x0, midi_key = 117}, {next = 0x0, midi_key = 118}, {next = 0x0,
> midi_key = 119}, {next = 0x0, midi_key = 120}, {next = 0x0, midi_key = 121}, {next = 0x0, midi_key = 122}, {next = 0x0, midi_key = 123}, {next = 0x0,
> midi_key = 124}, {next = 0x0, midi_key = 125}, {next = 0x0, midi_key = 126}, {next = 0x0, midi_key = 127}}, head = 0x0, cur = 0x0, prev = 0x0,
> delay_buf = {0 <repeats 720004 times>}, chorus_buf = {-9.99999984e-18, -9.99999984e-18, 0 <repeats 2050 times>}, portamento_samples = 2,
> portamento_sample = 0, midi_key = -1, prev_key = -1, last_key = 0, high_key = 0, low_key = 0, filter_cutoff_target = 127, filter_q = 0.75,
> filter_smooth_len = 160, filter_smooth_factor = 0.00621118024, delay_size = inf, delay_write_index = 0, delay_read_index = -83649,
> delay_bufsize = 360000, delay_length = -2147483648, chorus_write_index = 1, chorus_delay_index = 0, chorus_read_index_a = 1023,
> chorus_read_index_b = 1023, chorus_read_index_c = 1023, chorus_read_index_d = 1023, chorus_bufsize = 1024, chorus_len = 0, chorus_size = 0,
> chorus_lfo_freq = 4.5060826e-39, chorus_lfo_adjust = 5.40729969e-39, chorus_lfo_index = 0, chorus_lfo_index_a = 5.40729969e-39,
> chorus_lfo_index_b = 14400, chorus_lfo_index_c = 28800, chorus_lfo_index_d = 43200, chorus_phase_index_a = 5.40729969e-39, chorus_phase_index_b = 14400,
> chorus_phase_index_c = 28800, chorus_phase_index_d = 43200, chorus_phase_freq = 4.5060826e-39, chorus_phase_adjust = 5.40729969e-39,
> chorus_phase_amount_a = 0.300095111, chorus_phase_amount_b = 0.606911123, chorus_phase_amount_c = 0.300095111, chorus_phase_amount_d = 0,
> pitch_bend_base = 0, out1 = 0, out2 = 0, osc_wave = {0, 0, 0, 0}, osc_am_mod = {4, 4, 4, 4}, osc_freq_mod = {4, 4, 4, 4}, osc_phase_mod = {4, 4, 4, 4},
> osc_init_index = {0, 0, 0, 0}, osc_pitch_bend = {0, 0, 0, 0}, osc_phase_adjust = {0, 0, 0, 0}, lfo_pitch_bend = {0, 0, 0, 0}, lfo_freq = {8.17579937,
> 8.17579937, 8.17579937, 8.17579937}, lfo_init_index = {0, 0, 0, 0}, lfo_adjust = {9.81095982, 9.81095982, 9.81095982, 9.81095982}, lfo_portamento = {0,
> 0, 0, 0}, lfo_index = {9.81095982, 9.81095982, 9.81095982, 9.81095982}, lfo_out = {0, 0, 0, 0, 0, 0}, lfo_key = {0, 0, 0, 0}}
>
> delay_read_index looks very wrong

And so do delay_length and delay_size. Can you send me the patch
that triggers the crash so I can try to recreate the problem? BTW,
what sampling rate are you running at? Is oversampling turned on?

Thanks for catching this so quickly!
--ww
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo.cgi/linux-audio-dev
Received on Wed Aug 8 12:15:02 2007

This archive was generated by hypermail 2.1.8 : Wed Aug 08 2007 - 12:15:03 EEST