Comment 14 for bug 325001

Revision history for this message
Jimmy Pinto Stelzer (jimmy-stelzer) wrote :

Same in 9.04 i686.

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.04
DISTRIB_CODENAME=jaunty
DISTRIB_DESCRIPTION="Ubuntu 9.04"

$ cat /etc/issue
Ubuntu 9.04 \n \l

$ uname -a
Linux jimmy-desktop 2.6.28-12-generic #43-Ubuntu SMP Fri May 1 19:27:06 UTC 2009 i686 GNU/Linux

Crash when execute helix-player with no root user (Segmentation fault).

$ strace helix-player
execve("/usr/bin/helix-player", ["helix-player"], [/* 37 vars */]) = 0
brk(0) = 0x8d7b000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb805c000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=82045, ...}) = 0
mmap2(NULL, 82045, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb8047000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/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\320h\1\0004\0\0\0\344"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1442180, ...}) = 0
mmap2(NULL, 1451632, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7ee4000
mprotect(0xb8040000, 4096, PROT_NONE) = 0
mmap2(0xb8041000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15c) = 0xb8041000
mmap2(0xb8044000, 9840, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb8044000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ee3000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7ee38d0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
open("/dev/urandom", O_RDONLY) = 3
read(3, "\271U\26\331"..., 4) = 4
close(3) = 0
mprotect(0xb8041000, 8192, PROT_READ) = 0
mprotect(0x805d000, 4096, PROT_READ) = 0
mprotect(0xb807b000, 4096, PROT_READ) = 0
munmap(0xb8047000, 82045) = 0
getpid() = 6149
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
geteuid32() = 1000
brk(0) = 0x8d7b000
brk(0x8d9c000) = 0x8d9c000
getppid() = 6148
stat64("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/usr/bin/helix-player", O_RDONLY) = 3
fcntl64(3, F_DUPFD, 10) = 10
close(3) = 0
fcntl64(10, F_SETFD, FD_CLOEXEC) = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x8056770, ~[RTMIN RT_1], 0}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {SIG_DFL}, NULL, 8) = 0
read(10, "#!/bin/sh\n\nHELIX_LIBS=\"/usr/lib/h"..., 8192) = 2088
stat64("/usr/lib/helix/player", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
pipe([3, 4]) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7ee3918) = 6150
close(4) = 0
read(3, "\n"..., 128) = 1
read(3, ""..., 128) = 0
close(3) = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 6150
--- SIGCHLD (Child exited) @ 0 (0) ---
pipe([3, 4]) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7ee3918) = 6153
--- SIGCHLD (Child exited) @ 0 (0) ---
close(4) = 0
read(3, "/usr/bin/catchsegv\n"..., 128) = 19
read(3, ""..., 128) = 0
close(3) = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 6153
stat64("/usr/bin/catchsegv", {st_mode=S_IFREG|0755, st_size=3380, ...}) = 0
geteuid32() = 1000
getgid32() = 1000
getegid32() = 1000
getgroups32(0, NULL) = 18
getgroups32(18, [0, 4, 20, 21, 24, 26, 29, 30, 44, 46, 100, 104, 106, 108, 114, 123, 124, 1000]) = 18
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7ee3918) = 6154
--- SIGCHLD (Child exited) @ 0 (0) ---
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 6154
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7ee3918) = 6155
wait4(-1, [{WIFSIGNALED(s) && WTERMSIG(s) == SIGSEGV}], 0, NULL) = 6155
--- SIGCHLD (Child exited) @ 0 (0) ---
write(2, "Segmentation fault\n"..., 19Segmentation fault
) = 19
read(10, ""..., 8192) = 0
exit_group(0) = ?

Work if run with root user.

$ sudo strace helix-player
execve("/usr/bin/helix-player", ["helix-player"], [/* 16 vars */]) = 0
brk(0) = 0x895e000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fc5000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=82045, ...}) = 0
mmap2(NULL, 82045, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fb0000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/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\320h\1\0004\0\0\0\344"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1442180, ...}) = 0
mmap2(NULL, 1451632, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7e4d000
mprotect(0xb7fa9000, 4096, PROT_NONE) = 0
mmap2(0xb7faa000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15c) = 0xb7faa000
mmap2(0xb7fad000, 9840, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fad000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7e4c000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e4c8d0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
open("/dev/urandom", O_RDONLY) = 3
read(3, "0\271\16G"..., 4) = 4
close(3) = 0
mprotect(0xb7faa000, 8192, PROT_READ) = 0
mprotect(0x805d000, 4096, PROT_READ) = 0
mprotect(0xb7fe4000, 4096, PROT_READ) = 0
munmap(0xb7fb0000, 82045) = 0
getpid() = 11574
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
geteuid32() = 0
brk(0) = 0x895e000
brk(0x897f000) = 0x897f000
getppid() = 11573
getcwd("/"..., 4096) = 2
open("/usr/bin/helix-player", O_RDONLY) = 3
fcntl64(3, F_DUPFD, 10) = 10
close(3) = 0
fcntl64(10, F_SETFD, FD_CLOEXEC) = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x8056770, ~[RTMIN RT_1], 0}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {SIG_DFL}, NULL, 8) = 0
read(10, "#!/bin/sh\n\nHELIX_LIBS=\"/usr/lib/h"..., 8192) = 2088
stat64("/usr/lib/helix/player", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
pipe([3, 4]) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e4c918) = 11575
close(4) = 0
read(3, "\n"..., 128) = 1
read(3, ""..., 128) = 0
close(3) = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 11575
--- SIGCHLD (Child exited) @ 0 (0) ---
pipe([3, 4]) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e4c918) = 11578
--- SIGCHLD (Child exited) @ 0 (0) ---
close(4) = 0
read(3, "/usr/bin/catchsegv\n"..., 128) = 19
read(3, ""..., 128) = 0
close(3) = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 11578
stat64("/usr/bin/catchsegv", {st_mode=S_IFREG|0755, st_size=3380, ...}) = 0
geteuid32() = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e4c918) = 11579
--- SIGCHLD (Child exited) @ 0 (0) ---
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 11579
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e4c918) = 11580
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 11580
--- SIGCHLD (Child exited) @ 0 (0) ---
read(10, ""..., 8192) = 0
exit_group(0) = ?