SIGFPE

Stefan Adams
2008-11-12T04:39:26Z

I'm trying to compile a package of pulseaudio for thinstation. I've
done that and it's apparently successful because there were no errors
during compile.

I boot up thinstation and try to run pulseaudio and I get this
horribly worthless message: "Floating point exception"
That's it! All by itself! How can I proceed to solve the problem?
Is it in pulseaudio? Is it in one of the other libraries that I had
to compile? All compiling was done within the RUNME chroot
environment provided by thinstation_src.

Do you think thinstation or pulseaudio groups may be able to help, or
am I going to have to debug the problem myself? If the latter, *any*
suggestions would be most welcome!!

# /bin/pulseaudio
Floating point exception

# ldd /bin/pulseaudio
linux-gate.so.1 => (0xffffe000)
libpulsecore.so.8 => /lib/libpulsecore.so.8 (0xb7ed6000)
libltdl.so.3 => /lib/libltdl.so.3 (0xb7ece000)
libsamplerate.so.0 => /lib/libsamplerate.so.0 (0xb7d65000)
libspeex.so.1 => /lib/libspeex.so.1 (0xb7d52000)
libspeexdsp.so.1 => /lib/libspeexdsp.so.1 (0xb7d44000)
libsndfile.so.1 => /lib/libsndfile.so.1 (0xb7bb5000)
liboil-0.3.so.0 => /lib/liboil-0.3.so.0 (0xb7b57000)
libgdbm.so.3 => /lib/libgdbm.so.3 (0xb7b51000)
librt.so.1 => /lib/librt.so.1 (0xb7b3e000)
libdl.so.2 => /lib/libdl.so.2 (0xb7b3a000)
libm.so.6 => /lib/libm.so.6 (0xb7b19000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7b08000)
libc.so.6 => /lib/libc.so.6 (0xb7a18000)
/lib/ld-linux.so.2 (0xb7f44000)

# gdb /bin/pulseaudio
GNU gdb 6.3
Copyright 2004 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: /bin/pulseaudio

Program received signal SIGFPE, Arithmetic exception.
0xb7f157ae in ?? ()
(gdb) c
Continuing.

Program terminated with signal SIGFPE, Arithmetic exception.
The program no longer exists.
(gdb) q

# strace /bin/pulseaudio
execve("/bin/pulseaudio", ["/bin/pulseaudio"], [/* 46 vars */]) = 0
brk(0) = 0x8055000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/tls/i686/libpulsecore.so.8", O_RDONLY) = -1
ENOENT (No such file or directory)
stat64("/usr/local/lib/tls/i686", 0xbf922300) = -1 ENOENT (No such
file or directory)
open("/usr/local/lib/tls/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No
such file or directory)
stat64("/usr/local/lib/tls", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/usr/local/lib/i686/libpulsecore.so.8", O_RDONLY) = -1 ENOENT
(No such file or directory)
stat64("/usr/local/lib/i686", 0xbf922300) = -1 ENOENT (No such file or
directory)
open("/usr/local/lib/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No
such file or directory)
stat64("/usr/local/lib", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/i686/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No
such file or directory)
stat64("/usr/lib/tls/i686", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat64("/usr/lib/tls", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/usr/lib/i686/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat64("/usr/lib/i686", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/usr/lib/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat64("/usr/lib", {st_mode=S_IFDIR|0755, st_size=95, ...}) = 0
open("/lib/tls/i686/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat64("/lib/tls/i686", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/lib/tls/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat64("/lib/tls", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/lib/i686/libpulsecore.so.8", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat64("/lib/i686", 0xbf922300) = -1 ENOENT (No such file or directory)
open("/lib/libpulsecore.so.8", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\366\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=544287, ...}) = 0
old_mmap(NULL, 448932, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7f03000
old_mmap(0xb7f6f000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6b000) = 0xb7f6f000
close(3) = 0
open("/usr/lib/libltdl.so.3", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libltdl.so.3", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\24"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=22840, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0xb7f02000
old_mmap(NULL, 25964, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7efb000
old_mmap(0xb7f01000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0xb7f01000
mprotect(0xbf922000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|0x1000000) = 0
close(3) = 0
open("/usr/lib/libsamplerate.so.0", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/lib/libsamplerate.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\10"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1476903, ...}) = 0
old_mmap(NULL, 1475344, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7d92000
old_mmap(0xb7efa000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x167000) = 0xb7efa000
close(3) = 0
open("/usr/lib/libspeex.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libspeex.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360*\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=86454, ...}) = 0
old_mmap(NULL, 76948, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7d7f000
old_mmap(0xb7d91000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x11000) = 0xb7d91000
close(3) = 0
open("/usr/lib/libspeexdsp.so.1", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/lib/libspeexdsp.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\32\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=62135, ...}) = 0
old_mmap(NULL, 56144, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7d71000
old_mmap(0xb7d7e000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0xb7d7e000
close(3) = 0
open("/usr/lib/libsndfile.so.1", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/lib/libsndfile.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\251"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1839206, ...}) = 0
old_mmap(NULL, 1632532, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7be2000
old_mmap(0xb7c69000, 1064960, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x86000) = 0xb7c69000
old_mmap(0xb7d6d000, 14612, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7d6d000
close(3) = 0
open("/usr/lib/liboil-0.3.so.0", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/lib/liboil-0.3.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`@\1\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=529664, ...}) = 0
old_mmap(NULL, 384108, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7b84000
old_mmap(0xb7bca000, 90112, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x46000) = 0xb7bca000
old_mmap(0xb7be0000, 7276, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7be0000
close(3) = 0
open("/usr/lib/libgdbm.so.3", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libgdbm.so.3", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\r\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=21066, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0xb7b83000
old_mmap(NULL, 18924, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7b7e000
old_mmap(0xb7b82000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0xb7b82000
close(3) = 0
open("/usr/lib/librt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320 \0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=30572, ...}) = 0
old_mmap(NULL, 77528, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7b6b000
old_mmap(0xb7b72000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0xb7b72000
old_mmap(0xb7b74000, 40664, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7b74000
close(3) = 0
open("/usr/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \f\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=14510, ...}) = 0
old_mmap(NULL, 12396, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7b67000
old_mmap(0xb7b69000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0xb7b69000
close(3) = 0
open("/usr/lib/libm.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0203\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=174972, ...}) = 0
old_mmap(NULL, 131248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7b46000
old_mmap(0xb7b65000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e000) = 0xb7b65000
close(3) = 0
open("/usr/lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file
or directory)
open("/lib/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0(H\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=96796, ...}) = 0
old_mmap(NULL, 66020, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7b35000
old_mmap(0xb7b42000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0xb7b42000
old_mmap(0xb7b44000, 4580, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7b44000
close(3) = 0
open("/usr/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\10Q\1\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1219204, ...}) = 0
old_mmap(NULL, 982396, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7a45000
old_mmap(0xb7b2f000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe9000) = 0xb7b2f000
old_mmap(0xb7b33000, 7548, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7b33000
close(3) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0xb7a44000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0xb7a43000
--- SIGFPE (Floating point exception) ---
+++ killed by SIGFPE +++