Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#35 Sound file load freezes at 99%

closed-out-of-date
Davy Durham
5
2015-02-21
2003-11-22
Rui Nuno Capela
No

Hi,

I'm having a bad time building rezound-0.9.0beta on my
custom SUSE 9.0 box (P4@2.8GHz FSB800 1GB DDR400
SMT, kernel 2.4.22 lowlat+preemt+capabilities).

My simple compile steps are:

./configure --prefix=/usr/local
make
make install

(no real need for make install, as this happens from the local
executable too):

When I open for load any soundfile (wav, ogg, whatever) into
the editor, the progress box runs to 99% and stays there still,
frozen. Kaput. I always end in issuing a killall rezound to get
rid of the frozen rezound windows.

This is very reproducible. Any sound file. Any type of build
(debug, optimized, whatever).
It doesn't matter if I run with either audio-mehod (oss or jack)
the result is always the same. Sound file load freezes at 99%.

OTHO, while on first compile trials, the configure step was
complaining about not finding libfftw or librfftw. I have
fftw-devel-2.1.3-921 installed from original SUSE packages.
After I tried symlinking to the available libdfftw or libdrfftw
(double-precision?) the result was segfaulting on any rezound
runtime startup. Then symlinking to the alternate libsfftw or
libsrfftw (single-precision?) solved the segfault at startup.

However the 99%freeze-bug remained on every ocasion
rezound can start properly.

Some specs for my platform (from SUSE 9.0 original
packages, unless otherwise noted):

gcc-3.3.1-24
glibc-2.3.2-88
autoconf-2.57-137
automake-1.7.6-41
audiofile-0.2.3-326
libvorbis-1.0-195
libogg-1.0-192
fftw-2.1.3-921 (with the symlink hack)
ladspa-1.12-30
alsa-driver-0.9.8 (from source tarball)
jack-0.90.0 (from source tarball)
fox-1.0.48 (from source tarball)

--- The output from `configure --prefix=/usr/local`: ---

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for gawk... (cached) gawk
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached)
yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ANSI C... (cached) none
needed
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking how to run the C++ preprocessor... g++ -E
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether make sets $(MAKE)... (cached) yes
checking for flex... flex
checking for yywrap in -lfl... yes
checking lex output file root... lex.yy
checking whether yytext is a pointer... no
checking for bison... bison -y
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/i586-suse-linux/bin/ld
checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU
ld... yes
checking for /usr/i586-suse-linux/bin/ld option to reload object
files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking for a sed that does not truncate output... /usr/bin/sed
checking how to recognise dependent libraries... pass_all
checking command to parse /usr/bin/nm -B output... ok
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for ranlib... ranlib
checking for strip... strip
checking for objdir... .libs
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... no
checking if we can lock with hard links... yes
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking whether the linker (/usr/i586-suse-linux/bin/ld)
supports shared libraries... yes
checking how to hardcode library paths into programs...
immediate
checking whether stripping libraries is possible... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
creating libtool
checking for lame... no
configure: WARNING: lame not found on $PATH -- this is
necessary for loading and saving MP3s -- it is called 'notlame'
on some distroes -- the source can be downloaded from http://
lame.sourceforge.net
checking for cdrdao... /usr/bin/cdrdao
checking if g++ accepts -g ... yes
checking if g++ accepts -Wall ... yes
checking if g++ accepts -Wno-unused-function ... yes
checking if g++ accepts -Wno-unused-variable ... yes
checking if g++ accepts -Wno-unused ... yes
checking for stdint.h... (cached) yes
checking sstream usability... yes
checking sstream presence... yes
checking for sstream... yes
checking for ANSI C header files... (cached) yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/vfs.h usability... yes
checking sys/vfs.h presence... yes
checking for sys/vfs.h... yes
checking sys/statvfs.h usability... yes
checking sys/statvfs.h presence... yes
checking for sys/statvfs.h... yes
checking sys/statfs.h usability... yes
checking sys/statfs.h presence... yes
checking for sys/statfs.h... yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for off_t... yes
checking for size_t... yes
checking for uint8_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for int8_t... yes
checking for int16_t... yes
checking for int32_t... yes
checking for int64_t... yes
checking for float... yes
checking size of float... 4
checking for double... yes
checking size of double... 8
checking for char... yes
checking size of char... 1
checking whether byte ordering is bigendian... no
*** setting the internal sample type to signed 16 bit by
default
checking for pid_t... yes
checking for unistd.h... (cached) yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... no
checking for working vfork... (cached) yes
checking whether gcc needs -traditional... no
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking return type of signal handlers... void
checking whether lstat dereferences a symlink specified with a
trailing slash... yes
checking whether stat accepts an empty string... no
checking for sqrt in -lm... yes
checking for floor... yes
checking for ftruncate... yes
checking for memmove... yes
checking for memset... yes
checking for mkdir... yes
checking for modf... yes
checking for pow... yes
checking for realpath... yes
checking for sqrt... yes
checking for strchr... yes
checking for strdup... yes
checking for strerror... yes
checking for strrchr... yes
checking for strstr... yes
checking for strtol... yes
checking for statfs... yes
checking for pthread_create in -lpthread... yes
checking for pthread_mutex_init in -lpthread... yes
checking for pthread_cond_init in -lpthread... yes
checking for pthread_rwlock_init in -lpthread... yes
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
configure: Tests for methods to use for audio I/O will follow
below. The method actually used will be determined at
run-time depending on the order of the values in the
~/.rezound/registry.dat file in AudioOutput(or Input)Methods
and will depend on which method first initializes successfully.
Alternatively, there is an --audio-method=... flag to the
rezound binary to choose which method to try first. See
'rezound --help' for more information.
checking sys/soundcard.h usability... yes
checking sys/soundcard.h presence... yes
checking for sys/soundcard.h... yes
*** enabling OSS for audio I/O
checking for Pa_Initialize in -lportaudio... no
checking for pkg-config... /usr/bin/pkg-config
checking for jack... yes
checking JACK_CFLAGS... -I/usr/local/include
checking JACK_LIBS... -L/usr/local/lib -ljack -lpthread -ldl -lrt
*** enabling JACK for audio I/O
checking for audiofile-config... /usr/bin/audiofile-config
checking for Audio File Library - version >= 0.2.2... yes
checking for Ogg... yes
checking for Vorbis... yes
checking for libFLAC... yes
checking for libFLAC++... yes
checking fftw.h usability... yes
checking fftw.h presence... yes
checking for fftw.h... yes
checking for fftw_create_plan in -lfftw... yes
checking rfftw.h usability... yes
checking rfftw.h presence... yes
checking for rfftw.h... yes
checking for rfftw_create_plan in -lrfftw... yes
configure: enabling LADSPA support by default
checking for FXApp class in -lFOX-1.1... no
checking for FXApp class in -lFOX... yes
checking for reswrap... /usr/local/bin/reswrap
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for ld used by GCC... /usr/i586-suse-linux/bin/ld
checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU
ld... yes
checking for shared library run path origin... done
checking whether NLS is requested... yes
checking for GNU gettext in libc... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/PoolFile/Makefile
config.status: creating src/misc/Makefile
config.status: creating src/misc/CNestedDataFile/Makefile
config.status: creating src/backend/Makefile
config.status: creating src/backend/DSP/Makefile
config.status: creating src/backend/Edits/Makefile
config.status: creating src/backend/Effects/Makefile
config.status: creating src/backend/Filters/Makefile
config.status: creating src/backend/Looping/Makefile
config.status: creating src/backend/Generate/Makefile
config.status: creating src/backend/Remaster/Makefile
config.status: creating src/backend/LADSPA/Makefile
config.status: creating src/frontend_fox/Makefile
config.status: creating po/Makefile.in
config.status: creating config/config.h
config.status: executing depfiles commands
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile

Please consider joining the ReZound-users mailing list:
http://lists.sourceforge.net/lists/listinfo/rezound-users

You may also want to click the 'Monitor' icon on the 'Latest File
Releases'
section on http://sourceforge.net/projects/rezound/ to be
informed when new
releases are made.

--- The output from `ldd rezound`: ---

libpthread.so.0 => /lib/i686/libpthread.so.0
(0x40033000)
libaudiofile.so.0 => /usr/lib/libaudiofile.so.0
(0x40084000)
libjack.so.0 => /usr/local/lib/libjack.so.0 (0x400a9000)
libdl.so.2 => /lib/libdl.so.2 (0x400b4000)
librt.so.1 => /lib/librt.so.1 (0x400b7000)
libvorbisfile.so.3 => /usr/lib/libvorbisfile.so.3
(0x400cb000)
libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2
(0x400d2000)
libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x401ba000)
libogg.so.0 => /usr/lib/libogg.so.0 (0x401db000)
libFLAC++.so.2 => /usr/lib/libFLAC++.so.2
(0x401df000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x401fc000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x402bd000)
libFLAC.so.4 => /usr/lib/libFLAC.so.4 (0x402c5000)
libFOX-1.0.so.0 => /usr/local/lib/libFOX-1.0.so.0
(0x40308000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6
(0x40590000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6
(0x4059e000)
libGL.so.1 => /usr/lib/libGL.so.1 (0x4069a000)
libGLU.so.1 => /usr/lib/libGLU.so.1 (0x40711000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x4078e000)
libpng.so.3 => /usr/lib/libpng.so.3 (0x407ae000)
libtiff.so.3 => /usr/lib/libtiff.so.3 (0x407dc000)
libz.so.1 => /lib/libz.so.1 (0x40826000)
libsrfftw.so.2 => /usr/lib/libsrfftw.so.2 (0x40835000)
libsfftw.so.2 => /usr/lib/libsfftw.so.2 (0x40860000)
libm.so.6 => /lib/i686/libm.so.6 (0x4088f000)
libc.so.6 => /lib/i686/libc.so.6 (0x408b2000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

--- The last lines from the output of `strace ./rezound`: ---
[...]
lseek(19, 24545, SEEK_SET) = 24545
write(19, "\v\0\0\0", 4) = 4
lseek(19, 24549, SEEK_SET) = 24549
write(19, "PeakChunk 0", 11) = 11
lseek(19, 24560, SEEK_SET) = 24560
write(19, "&>\2\0", 4) = 4
lseek(19, 24564, SEEK_SET) = 24564
write(19, "\6\0\0\0", 4) = 4
lseek(19, 24568, SEEK_SET) = 24568
write(19, "0\0\0\0", 4) = 4
lseek(19, 24572, SEEK_SET) = 24572
write(19, "\0\0\0\0H\f\0\0\24\0\20\0\0\0\0\0H\f\0\0H\f\0\0
\260\30"..., 768) = 768
lseek(19, 25340, SEEK_SET) = 25340
write(19, "\v\0\0\0", 4) = 4
lseek(19, 25344, SEEK_SET) = 25344
write(19, "PeakChunk 1", 11) = 11
lseek(19, 25355, SEEK_SET) = 25355
write(19, "&>\2\0", 4) = 4
lseek(19, 25359, SEEK_SET) = 25359
write(19, "\6\0\0\0", 4) = 4
lseek(19, 25363, SEEK_SET) = 25363
write(19, "0\0\0\0", 4) = 4
lseek(19, 25367, SEEK_SET) = 25367
write(19, "\0\0\0\0H\f\0\0b\f\20\0\0\0\0\0H\f\0\0H\f\0\0
\370$ \0\0"..., 768) = 768
lseek(19, 26135, SEEK_SET) = 26135
write(19, "\4\0\0\0", 4) = 4
lseek(19, 26139, SEEK_SET) = 26139
write(19, "Cues", 4) = 4
lseek(19, 26143, SEEK_SET) = 26143
write(19, "\0\0\0\0", 4) = 4
lseek(19, 26147, SEEK_SET) = 26147
write(19, "\204\0\0\0", 4) = 4
lseek(19, 26151, SEEK_SET) = 26151
write(19, "\0\0\0\0", 4) = 4
lseek(19, 26155, SEEK_SET) = 26155
write(19, "\t\0\0\0", 4) = 4
lseek(19, 26159, SEEK_SET) = 26159
write(19, "UserNotes", 9) = 9
lseek(19, 26168, SEEK_SET) = 26168
write(19, "\0\0\0\0", 4) = 4
lseek(19, 26172, SEEK_SET) = 26172
write(19, "\1\0\0\0", 4) = 4
lseek(19, 26176, SEEK_SET) = 26176
write(19, "\0\0\0\0", 4) = 4
lseek(18, 526, SEEK_SET) = 526
write(18, "\0", 1) = 1
lseek(18, 1055914, SEEK_SET) = 1055914
read(18, "\0\0\0\0\1\0", 6) = 6
lseek(18, 1024, SEEK_SET) = 1024
read(18, "\1\0\0\0\0\0\300\0\0\0\0\0D\254\0\0\2\0\0\0",
20) = 20
write(3, "+\0\1\0", 4) = 4
read(3, 0xbfffd2a0, 32) = -1 EAGAIN (Resource
temporarily unavailable)
select(4, [3], NULL, NULL, NULL) = 1 (in [3])
read(3, "\1\2\247\222\0\0\0\0\33\10\240\3\0\0\0\0\1\0\0\0
\2\0\0"..., 32) = 32
close(17) = 0
munmap(0x40e9b000, 4096) = 0
mmap2(NULL, 139264, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x41286000
rt_sigprocmask(SIG_SETMASK, NULL, [FPE RTMIN], 8) = 0
write(6, "`\3017\10\0\0\0\0000\330\377\277\"\354\33\10\f
\241J\10"..., 148) = 148
rt_sigprocmask(SIG_SETMASK, NULL, [FPE RTMIN], 8) = 0
rt_sigsuspend([FPE] <unfinished ...>
--- SIGRTMIN (Unknown signal 32) @ 0 (0) ---
<... rt_sigsuspend resumed> ) = -1 EINTR
(Interrupted system call)
sigreturn() = ? (mask now [FPE
RTMIN])
lseek(18, 1055914, SEEK_SET) = 1055914
write(18, "\0\0\0\0\1\0", 6) = 6
lseek(18, 1024, SEEK_SET) = 1024
write(18, "\1\0\0\0\0\344\272\0\0\0\0\0D\254\0\0\2\0\0
\0", 20) = 20
lseek(18, 0, SEEK_SET) = 0
write(18, "CMFL", 4) = 4
write(18, "si\306g", 4) = 4
write(18, "\1\0\0\0\0\0\0\0", 8) = 8
write(18, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0"..., 496) = 496
lseek(18, 48903836, SEEK_SET) = 48903836
read(18, "\0\0", 2) = 2
lseek(18, 48903836, SEEK_SET) = 48903836
write(18, "\1\0", 2) = 2
lseek(18, 0, SEEK_SET) = 0
write(18, "CMFL", 4) = 4
write(18, "si\306g", 4) = 4
write(18, "\1\0\0\0\0\0\0\0", 8) = 8
write(18, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0"..., 496) = 496
lseek(18, 48903836, SEEK_SET) = 48903836
read(18, "\1\0\0\0", 4) = 4
lseek(18, 48903836, SEEK_SET) = 48903836
write(18, "\1\0\2\0", 4) = 4
lseek(18, 0, SEEK_SET) = 0
write(18, "CMFL", 4) = 4
write(18, "si\306g", 4) = 4
write(18, "\1\0\0\0\0\0\0\0", 8) = 8
write(18, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0"..., 496) = 496
lseek(18, 48903836, SEEK_SET) = 48903836
read(18, "\1\0\2\0\0\0", 6) = 6
lseek(18, 48903836, SEEK_SET) = 48903836
write(18, "\1\0\2\0\2\0", 6) = 6
lseek(18, 0, SEEK_SET) = 0
write(18, "CMFL", 4) = 4
write(18, "si\306g", 4) = 4
write(18, "\1\0\0\0\0\0\0\0", 8) = 8
write(18, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0"..., 496) = 496
lseek(18, 48903836, SEEK_SET) = 48903836
read(18, "\1\0\2\0\2\0\0\0", 8) = 8
open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/libc.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, NULL, [FPE RTMIN], 8) = 0
rt_sigsuspend([FPE]
<--- rezound-freezes-here-EVERYTIME-on-load-at-99-percent
--->

Note the last line of the strace is somewhat incomplete or
unfinished. It always ends this way. Any clues?

Hope this is handful :)

Discussion

  • Davy Durham
    Davy Durham
    2003-11-23

    • assigned_to: nobody --> ddurham
     
  • Davy Durham
    Davy Durham
    2003-11-23

    Logged In: YES
    user_id=28588

    Hmm.. okay, are you handy at using gdb? Could you try
    running ReZound in the debugger and when it's frozen get a
    back trace of all the threads?

    run:
    > gdb rezound
    > run
    .. load file and wait for freeze
    > ctrl-c
    > info threads
    > thread id1
    > bt
    >thread id2
    > bt
    ... etc

    Lemme know.

    -- Davy

     
  • Logged In: YES
    user_id=711484

    Here it goes the complete gdb session output as
    requested:
    ---bof---
    $ gdb ./rezound
    GNU gdb 5.3.92
    Copyright 2003 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 "i586-suse-linux"...
    (gdb) run
    Starting program: /home/rncbc/src/rezound/
    rezound-0.9.0beta/rezound
    [New Thread 16384 (LWP 5865)]
    using path '/home/rncbc/src/rezound/rezound-0.9.0beta/
    share' for share data directory
    Error occurred while initializing audio output method 'oss'
    -- virtual void COSSSoundPlayer::initialize() -- error
    opening OSS device '/dev/dsp -- No such device
    cannot connect to jack server
    cannot connect to default JACK server
    Error occurred while initializing audio output method
    'jack' -- virtual void CJACKSoundPlayer::initialize() --
    error connecting to jack server -- jackd not running?
    'lame' executable not found in $PATH -- mp3 support
    will be disabled
    [New Thread 32769 (LWP 5889)]
    [New Thread 16386 (LWP 5890)]
    <Ctrl-C>
    Program received signal SIGINT, Interrupt.
    [Switching to Thread 16386 (LWP 5890)]
    0x4003bb94 in __pthread_sigsuspend () from /lib/
    i686/libpthread.so.0
    (gdb) info threads
    * 3 Thread 16386 (LWP 5890) 0x4003bb94 in
    __pthread_sigsuspend ()
    from /lib/i686/libpthread.so.0
    2 Thread 32769 (LWP 5889) 0x40985b66 in poll ()
    from /lib/i686/libc.so.6
    1 Thread 16384 (LWP 5865) 0x4003bb94 in
    __pthread_sigsuspend ()
    from /lib/i686/libpthread.so.0
    (gdb) thread 3
    [Switching to thread 3 (Thread 16386 (LWP 5890))]#0
    0x4003bb94 in __pthread_sigsuspend () from /lib/
    i686/libpthread.so.0
    (gdb) bt
    #0 0x4003bb94 in __pthread_sigsuspend () from /lib/
    i686/libpthread.so.0
    #1 0x4003b9d8 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
    #2 0x40037e90 in pthread_cond_wait@GLIBC_2.0 ()
    from /lib/i686/libpthread.so.0
    #3 0x0821604f in CConditionVariable::wait(CMutex&)
    (this=0x848fb28,
    mutex=@0x848fb5c) at CConditionVariable.h:93
    #4 0x08212683 in
    CSoundPlayerChannel::CPrebufferThread::main() (
    this=0x848fb14) at CSoundPlayerChannel.cpp:1095
    #5 0x081bec41 in AThread::AThreadStart(void*)
    (temp=0x848fb14)
    at AThread.h:128
    #6 0x40038f60 in pthread_start_thread () from /lib/
    i686/libpthread.so.0
    #7 0x400390fe in pthread_start_thread_event () from /
    lib/i686/libpthread.so.0
    #8 0x4098e327 in clone () from /lib/i686/libc.so.6
    (gdb) thread 2
    [Switching to thread 2 (Thread 32769 (LWP 5889))]#0
    0x40985b66 in poll ()
    from /lib/i686/libc.so.6
    (gdb) bt
    #0 0x40985b66 in poll () from /lib/i686/libc.so.6
    #1 0x40038a8e in __pthread_manager () from /lib/
    i686/libpthread.so.0
    #2 0x40038d63 in __pthread_manager_event ()
    from /lib/i686/libpthread.so.0
    #3 0x4098e327 in clone () from /lib/i686/libc.so.6
    (gdb) thread 1
    [Switching to thread 1 (Thread 16384 (LWP 5865))]#0
    0x4003bb94 in __pthread_sigsuspend () from /lib/
    i686/libpthread.so.0
    (gdb) bt
    #0 0x4003bb94 in __pthread_sigsuspend () from /lib/
    i686/libpthread.so.0
    #1 0x4003b9d8 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
    #2 0x4003867e in pthread_join () from /lib/i686/
    libpthread.so.0
    #3 0x081be90a in AThread::wait() (this=0x848fb14)
    at AThread.h:101
    #4 0x081be934 in ~AThread (this=0x848fb14) at
    AThread.h:55
    #5 0x08216576 in ~CPrebufferThread
    (this=0x848fb14)
    at CSoundPlayerChannel.cpp:70
    #6 0x0820e44e in CSoundPlayerChannel
    (this=0x848fae8, _player=0x8408080,
    _sound=0x8491e50) at
    CSoundPlayerChannel.cpp:72
    #7 0x08187cba in
    ASoundPlayer::newSoundPlayerChannel(CSound*) (
    this=0x8408080, sound=0x8491e50) at
    ASoundPlayer.cpp:93
    #8 0x08181c8d in
    ASoundFileManager::prvOpen(std::string, bool, bool,
    bool, ASoundTranslator const*) (this=0x84b6250,
    filename=
    {static npos = 4294967295, _M_dataplus =
    {<allocator<char>> = {<No data fields>}, _M_p =
    0x83e85cc "/home/rncbc/Media/Sound/BassDrive1/
    bassdrive1-20030208-0.ogg"}, static
    _S_empty_rep_storage = {0, 0, 858, 0}},
    readOnly=false,
    doRegisterFilename=true, asRaw=false,
    translatorToUse=0x837b174)
    at ASoundFileManager.cpp:161
    #9 0x081813a1 in
    ASoundFileManager::open(std::string, bool)
    (this=0x84b6250,
    _filename=
    {static npos = 4294967295, _M_dataplus =
    {<allocator<char>> = {<No data fields>}, _M_p =
    0x402b798c ""}, static _S_empty_rep_storage = {0, 0,
    858, 0}}, openAsRaw=false) at
    ASoundFileManager.cpp:117
    #10 0x0822322b in openSound(ASoundFileManager*,
    std::string) (
    soundFileManager=0x84b6250, filename=Cannot
    access memory at address 0xfffffffc
    ) at main_controls.cpp:43
    #11 0x08093d02 in
    CMainWindow::onFileAction(FXObject*, unsigned, void*)
    (
    this=0x83d5a08, sender=0x84caac0, sel=2228278,
    ptr=0x1)
    at CMainWindow.cpp:1166
    #12 0x0807dcfc in CMainWindow::handle(FXObject*,
    unsigned, void*) (
    this=0x83d5a08, sender=0x84caac0, sel=2228278,
    ptr=0x1)
    at CMainWindow.cpp:158
    #13 0x4046d25c in
    FXMenuCommand::onButtonRelease(FXObject*,
    unsigned, void*) ()
    from /usr/local/lib/libFOX-1.0.so.0
    #14 0x4046c8bd in
    FXMenuCommand::handle(FXObject*, unsigned, void*)
    ()
    from /usr/local/lib/libFOX-1.0.so.0
    #15 0x4039a875 in FXApp::dispatchEvent(_XEvent&) ()
    from /usr/local/lib/libFOX-1.0.so.0
    #16 0x4039c20d in FXApp::runOneEvent() () from /
    usr/local/lib/libFOX-1.0.so.0
    #17 0x4039bfec in FXApp::run() () from /usr/local/lib/
    libFOX-1.0.so.0
    #18 0x08057b68 in main (argc=1, argv=0xbfffddb4) at
    main.cpp:138
    ---eof---

     
  • Logged In: NO

    Hi.

    I'm too.
    (Suse9)

    Toma_

     
  • Igge
    Igge
    2004-01-11

    Logged In: YES
    user_id=930107

    Have the same error here.. SuSE 9.0, gcc 3.3.1, rezound 0.9, glibc 2.3.2

    Output from gdb:

    igge@igge:~> gdb rezound
    GNU gdb 5.3.93
    Copyright 2003 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 "i586-suse-linux"...
    (gdb) run
    Starting program: /usr/local/bin/rezound
    [New Thread 16384 (LWP 26128)]
    using path '/home/igge/temp/rezound-0.9.0beta/share' for share data
    directory
    [New Thread 32769 (LWP 26130)]
    [New Thread 16386 (LWP 26131)]
    Warning: You do not have a LADSPA_PATH environment variable set.
    file: /home/igge/multimedia/a-z/y/Yam-Clan.mp3
    lame command line: '/usr/local/bin/lame --decode
    "/home/igge/multimedia/a-z/y/Yam-Clan.mp3" -'
    input: /home/igge/multimedia/a-z/y/Yam-Clan.mp3
    (44.1 kHz, 2 channels, MPEG-1 Layer III)
    output: <stdout> (16 bit, Microsoft WAVE)
    skipping initial 1105 samples (encoder+decoder delay)
    Frame# 1623/1622 128 kbps MS
    [New Thread 32771 (LWP 26139)]
    pure virtual method called

    Program received signal SIGABRT, Aborted.
    [Switching to Thread 32771 (LWP 26139)]
    0x40880cc1 in kill () from /lib/libc.so.6
    (gdb) Quit
    (gdb) info threads
    * 4 Thread 32771 (LWP 26139) 0x40880cc1 in kill () from /lib/libc.so.6
    3 Thread 16386 (LWP 26131) 0x40034ddb in write () from /lib/libpthread.so.
    0
    2 Thread 32769 (LWP 26130) 0x4092cf16 in poll () from /lib/libc.so.6
    1 Thread 16384 (LWP 26128) 0x40030eb4 in __pthread_sigsuspend () from
    /lib/libpthread.so.0
    (gdb) thread id1
    No symbol "id1" in current context.
    (gdb) bt
    #0 0x40880cc1 in kill () from /lib/libc.so.6
    #1 0x40031011 in pthread_kill () from /lib/libpthread.so.0
    #2 0x4003138b in raise () from /lib/libpthread.so.0
    #3 0x40880a54 in raise () from /lib/libc.so.6
    #4 0x40881fcc in abort () from /lib/libc.so.6
    #5 0x40291305 in __cxxabiv1::__terminate(void (*)()) () from
    /usr/lib/libstdc++.so.5
    #6 0x40291342 in std::terminate() () from /usr/lib/libstdc++.so.5
    #7 0x40291855 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.5
    #8 0x081bc6ab in AThread::AThreadStart(void*) (temp=0x847a0cc) at
    AThread.h:128
    #9 0x4002e0f0 in pthread_start_thread () from /lib/libpthread.so.0
    #10 0x4002e16f in pthread_start_thread_event () from /lib/libpthread.so.0
    #11 0x40935c77 in clone () from /lib/libc.so.6
    (gdb) thread id2
    No symbol "id2" in current context.
    (gdb) bt
    #0 0x40880cc1 in kill () from /lib/libc.so.6
    #1 0x40031011 in pthread_kill () from /lib/libpthread.so.0
    #2 0x4003138b in raise () from /lib/libpthread.so.0
    #3 0x40880a54 in raise () from /lib/libc.so.6
    #4 0x40881fcc in abort () from /lib/libc.so.6
    #5 0x40291305 in __cxxabiv1::__terminate(void (*)()) () from
    /usr/lib/libstdc++.so.5
    #6 0x40291342 in std::terminate() () from /usr/lib/libstdc++.so.5
    #7 0x40291855 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.5
    #8 0x081bc6ab in AThread::AThreadStart(void*) (temp=0x847a0cc) at
    AThread.h:128
    #9 0x4002e0f0 in pthread_start_thread () from /lib/libpthread.so.0
    #10 0x4002e16f in pthread_start_thread_event () from /lib/libpthread.so.0
    #11 0x40935c77 in clone () from /lib/libc.so.6
    (gdb) thread id3
    No symbol "id3" in current context.
    (gdb) bt
    #0 0x40880cc1 in kill () from /lib/libc.so.6
    #1 0x40031011 in pthread_kill () from /lib/libpthread.so.0
    #2 0x4003138b in raise () from /lib/libpthread.so.0
    #3 0x40880a54 in raise () from /lib/libc.so.6
    #4 0x40881fcc in abort () from /lib/libc.so.6
    #5 0x40291305 in __cxxabiv1::__terminate(void (*)()) () from
    /usr/lib/libstdc++.so.5
    #6 0x40291342 in std::terminate() () from /usr/lib/libstdc++.so.5
    #7 0x40291855 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.5
    #8 0x081bc6ab in AThread::AThreadStart(void*) (temp=0x847a0cc) at
    AThread.h:128
    #9 0x4002e0f0 in pthread_start_thread () from /lib/libpthread.so.0
    #10 0x4002e16f in pthread_start_thread_event () from /lib/libpthread.so.0
    #11 0x40935c77 in clone () from /lib/libc.so.6
    (gdb) thread id4
    No symbol "id4" in current context.
    (gdb)

     
  • Logged In: YES
    user_id=711484

    Hi,

    Today I've stressed some more testing. Unfortunately the end
    results were the same: rezound can't load any soundfile,which
    makes it completely unusable as it seems an issue specific to SUSE
    9.0 :(

    I've built against FOX 1.0 and 1.1. Ran on 2.4 and 2.6 custom
    kernels, SMP and UP. All the same: no use.

    However, I've found a little difference, that regards whether I'm
    running a SMP (HT) or an UP kernel.

    On a SMP kernel, either 2.4 or 2.6, things happen exactly as my first
    post: rezound freezes as soon any file load reaches 99%. A gdb
    session with backtraces has been already shown (see my previous
    posts).

    On a UP kernel (again it doesn't matter if its 2.4 or 2.6), the
    programa just bail out with the following stderr lines:

    pure virtual method called
    Killed

    In this case, backtraces from a gdb session are quite the same as
    the one igee_1 exposed.

    Hope this is of any help.

    rncbc aka Rui Nuno Capela

     
  • Logged In: YES
    user_id=711484

    Hi,

    Just to note that after I upgrade to SUSE 9.1 this problem
    went away.

    Bye.
    rncbc

     
  • Davy Durham
    Davy Durham
    2004-06-26

    • status: open --> closed-out-of-date