Bug#340359: speexenc always crashes on amd64

Wesley J. Landaker wjl at icecavern.net
Tue Nov 22 23:53:54 UTC 2005


Package: speex
Version: 1.1.10-1
Severity: important

speexenc always crashes on amd64; here is an example, and lots of info:

$ speexenc free-software-song.wav free-software-song.spx
Encoding 16000 Hz audio using wideband (sub-band CELP) mode (mono)
Segmentation fault
$ 

Same results on pretty much any input (obviously the free-software-song
isn't a great candidate for speex encoding anyway, but it's a easy to
obtain reference if someone wants to try to reproduce this ;)

If I run it in gdb, I get the following:

(gdb) run
Starting program: /usr/bin/speexenc free-software-song.wav
free-software-song.spx
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
Encoding 16000 Hz audio using wideband (sub-band CELP) mode (mono)

Program received signal SIGSEGV, Segmentation fault.
0x00002aaaaafe356b in memcpy () from /lib/libc.so.6
(gdb) bt
#0  0x00002aaaaafe356b in memcpy () from /lib/libc.so.6
#1  0x00002aaaaace6042 in ogg_stream_packetin () from
/usr/lib/libogg.so.0
#2  0x00000000004022a1 in ?? ()
#3  0x00002aaaaaf8b4ba in __libc_start_main () from /lib/libc.so.6
#4  0x000000000040155a in ?? ()
#5  0x00007fffffbd3218 in ?? ()
#6  0x00002aaaaabc29c0 in ?? () from /lib64/ld-linux-x86-64.so.2
#7  0x0000000000000003 in ?? ()
#8  0x00007fffffbd4b82 in ?? ()
#9  0x00007fffffbd4b94 in ?? ()
#10 0x00007fffffbd4bab in ?? ()
#11 0x0000000000000000 in ?? ()
(gdb)                             

I'm also attaching an strace output from the same command. Hopefully
some of this will be helpful.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.14
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages speex depends on:
ii  libspeex1                     1.1.10-1   The Speex Speech Codec

speex recommends no packages.

-- no debconf information
-------------- next part --------------
execve("/usr/bin/speexenc", ["speexenc", "free-software-song.wav", "free-software-song.spx"], [/* 35 vars */]) = 0
uname({sys="Linux", node="tonberry", ...}) = 0
brk(0)                                  = 0x506000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aaaaaac2000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=96448, ...}) = 0
mmap(NULL, 96448, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2aaaaaac3000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libspeex.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220I\0\0"..., 640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=133160, ...}) = 0
mmap(NULL, 1179944, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2aaaaabc3000
mprotect(0x2aaaaabe3000, 1048872, PROT_NONE) = 0
mmap(0x2aaaaace2000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1f000) = 0x2aaaaace2000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libogg.so.0", O_RDONLY)  = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\33\0\0"..., 640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=20656, ...}) = 0
mmap(NULL, 1067592, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2aaaaace4000
mprotect(0x2aaaaace8000, 1051208, PROT_NONE) = 0
mmap(0x2aaaaade8000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x2aaaaade8000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libm.so.6", O_RDONLY)        = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320=\0\0"..., 640) = 640
fstat(3, {st_mode=S_IFREG|0644, st_size=543920, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aaaaade9000
mmap(NULL, 1589704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2aaaaadea000
mprotect(0x2aaaaae6e000, 1049032, PROT_NONE) = 0
mmap(0x2aaaaaf6d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x83000) = 0x2aaaaaf6d000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\305\1\0"..., 640) = 640
lseek(3, 624, SEEK_SET)                 = 624
read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\6\0\0\0"..., 32) = 32
fstat(3, {st_mode=S_IFREG|0755, st_size=1287416, ...}) = 0
mmap(NULL, 2346056, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2aaaaaf6f000
mprotect(0x2aaaab0a3000, 1084488, PROT_NONE) = 0
mmap(0x2aaaab1a2000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x133000) = 0x2aaaab1a2000
mmap(0x2aaaab1a8000, 15432, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2aaaab1a8000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aaaab1ac000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aaaab1ad000
mprotect(0x2aaaab1a2000, 12288, PROT_READ) = 0
arch_prctl(ARCH_SET_FS, 0x2aaaab1acae0) = 0
munmap(0x2aaaaaac3000, 96448)           = 0
brk(0)                                  = 0x506000
brk(0x527000)                           = 0x527000
open("free-software-song.wav", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3454892, ...}) = 0
mmap(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aaaaaac3000
read(3, "RIFF\244\2674\0WAVEfmt \20\0\0\0\1\0\1\0\200>\0\0\0}\0"..., 131072) = 131072
write(2, "Encoding 16000 Hz audio using wi"..., 67Encoding 16000 Hz audio using wideband (sub-band CELP) mode (mono)
) = 67
open("free-software-song.spx", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++


More information about the Pkg-voip-maintainers mailing list