Summary: | mozilla-launcher 1.30 hangs when starting firefox/thunderbird/mozilla without starting anything | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Paul Nel <p.n> |
Component: | Conceptual/Abstract Ideas | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED WORKSFORME | ||
Severity: | critical | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Paul Nel
2005-03-31 10:55:46 UTC
Thanks for the bug report, Paul. It appears that portage neglected to remove the existing symlink prior to installing the file. I believe this is a bug in portage and needs to be fixed there, not in the mozilla-launcher ebuild. Portage devs, here is what happened: Old versions of mozilla, mozilla-firefox and mozilla-thunderbird installed a symlink /usr/bin/mozilla -> /usr/libexec/mozilla-launcher (for example). New versions of the suite install a stub script instead. The installation of the script is done in src_install to ${D}/usr/bin, so it's up to portage to remove the existing symlink prior to installing the new file. Actually, I'd say it's the responsibility of the ebuild to remove the symlink on uninstall - but then portage determines when the ebuild is uninstalled and does it wrongly for that case anyway. ;) This bug occurred because of a change I made a fair while back. There was a bug where config-management-via-symlinks was being killed and no ._cfg000x files being created. Perhaps if symlinks are only kept within CONFIG_PROTECTed directories? Will fix as per above... Nope.. After looking at the code, I can see that what I was working on has nothing to do with this. I can't reproduce it either. I tried by emerge the following ebuilds, 0.1 then 0.2, but the symlink was replaced by the file and the original symlink deleted correctly. Are you able to reproduce this? #symlink-test-0.1.ebuild KEYWORDS="x86" src_install() { mkdir -p ${D}/home/symlink-test/ touch ${D}/home/symlink-test/dest ln -s dest ${D}/home/symlink-test/link } #symlink-test-0.2.ebuild KEYWORDS="x86" src_install() { mkdir -p ${D}/home/symlink-test/ echo foo > ${D}/home/symlink-test/link } I do not think it is a portage problem. After install it ran fine, the problem occurrs apparently random. It still happens but I have not been able to pinpoint the exact sequence of eventes leading to it yet. the new moz launcher installed w/ stubs for me but have this problem firefox seems to be stuck in a loop. so far ive only seen a bug report. the install segfaults/ # strace firefox execve("/usr/bin/firefox", ["firefox"], [/* 84 vars */]) = 0 brk(0) = 0x81bb000 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f5e000 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=295551, ...}) = 0 mmap2(NULL, 295551, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f15000 close(3) = 0 open("/usr/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\340\v\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=10444, ...}) = 0 mmap2(NULL, 12340, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7f11000 mmap2(0xb7f13000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED| MAP_DENYWRITE, 3, 0x1) = 0xb7f13000 close(3) = 0 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\0fS\1\000"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=1890560, ...}) = 0 mmap2(NULL, 1836252, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7d50000 mmap2(0xb7f0a000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED| MAP_DENYWRITE, 3, 0x1b9) = 0xb7f0a000 mmap2(0xb7f0e000, 9436, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED| MAP_ANONYMOUS, -1, 0) = 0xb7f0e000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7d4f000 set_thread_area({entry_number:-1 -> 6, base_addr:0xb7d4f6b0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 mprotect(0xb7f0a000, 4096, PROT_READ) = 0 mprotect(0xb7f8c000, 4096, PROT_READ) = 0 munmap(0xb7f15000, 295551) = 0 open("/dev/urandom", O_RDONLY) = 3 read(3, "\373\317\315\260", 4) = 4 close(3) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 open("/dev/tty", O_RDWR|O_NONBLOCK|O_LARGEFILE) = 3 close(3) = 0 brk(0) = 0x81bb000 brk(0x81dc000) = 0x81dc000 getuid32() = 0 getgid32() = 0 geteuid32() = 0 getegid32() = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 time(NULL) = 1120721848 open("/etc/mtab", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=474, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f5d000 read(3, "/dev/md2 / xfs rw,noatime 0 0\npr"..., 4096) = 474 close(3) = 0 munmap(0xb7f5d000, 4096) = 0 open("/proc/meminfo", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f5d000 read(3, "MemTotal: 2070772 kB\nMemFre"..., 1024) = 598 close(3) = 0 munmap(0xb7f5d000, 4096) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0 uname({sys="Linux", node="ribbon", ...}) = 0 stat64("/RamTemp/a", {st_mode=S_IFDIR|0755, st_size=40, ...}) = 0 stat64(".", {st_mode=S_IFDIR|0755, st_size=40, ...}) = 0 getpid() = 1665 getppid() = 1664 getpgrp() = 1664 rt_sigaction(SIGCHLD, {0x80a9ed0, [], 0}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 open("/usr/bin/firefox", O_RDONLY|O_LARGEFILE) = 3 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfb8a45c) = -1 ENOTTY (Inappropriate ioctl for device) _llseek(3, 0, [0], SEEK_CUR) = 0 read(3, "#!/bin/sh\n# \n# Stub script to ru"..., 80) = 80 _llseek(3, 0, [0], SEEK_SET) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 dup2(3, 255) = 255 close(3) = 0 fcntl64(255, F_SETFD, FD_CLOEXEC) = 0 fcntl64(255, F_GETFL) = 0x8000 (flags O_RDONLY|O_LARGEFILE) fstat64(255, {st_mode=S_IFREG|0755, st_size=266, ...}) = 0 _llseek(255, 0, [0], SEEK_CUR) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 read(255, "#!/bin/sh\n# \n# Stub script to ru"..., 266) = 266 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_IGN}, 8) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {0x80a9ed0, [], 0}, 8) = 0 execve("/usr/libexec/mozilla-launcher", ["/usr/libexec/mozilla-launcher"], [/* 83 vars */]) = 0 brk(0) = 0x81bb000 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f76000 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=295551, ...}) = 0 mmap2(NULL, 295551, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f2d000 close(3) = 0 open("/usr/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\340\v\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=10444, ...}) = 0 mmap2(NULL, 12340, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7f29000 mmap2(0xb7f2b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED| MAP_DENYWRITE, 3, 0x1) = 0xb7f2b000 close(3) = 0 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\0fS\1\000"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=1890560, ...}) = 0 mmap2(NULL, 1836252, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7d68000 mmap2(0xb7f22000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED| MAP_DENYWRITE, 3, 0x1b9) = 0xb7f22000 mmap2(0xb7f26000, 9436, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED| MAP_ANONYMOUS, -1, 0) = 0xb7f26000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7d67000 set_thread_area({entry_number:-1 -> 6, base_addr:0xb7d676b0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 mprotect(0xb7f22000, 4096, PROT_READ) = 0 mprotect(0xb7fa4000, 4096, PROT_READ) = 0 munmap(0xb7f2d000, 295551) = 0 open("/dev/urandom", O_RDONLY) = 3 read(3, "@\314\264\207", 4) = 4 close(3) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 open("/dev/tty", O_RDWR|O_NONBLOCK|O_LARGEFILE) = 3 close(3) = 0 brk(0) = 0x81bb000 brk(0x81dc000) = 0x81dc000 getuid32() = 0 getgid32() = 0 geteuid32() = 0 getegid32() = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 time(NULL) = 1120721848 open("/etc/mtab", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=474, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f75000 read(3, "/dev/md2 / xfs rw,noatime 0 0\npr"..., 4096) = 474 close(3) = 0 munmap(0xb7f75000, 4096) = 0 open("/proc/meminfo", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f75000 read(3, "MemTotal: 2070772 kB\nMemFre"..., 1024) = 598 close(3) = 0 munmap(0xb7f75000, 4096) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0 uname({sys="Linux", node="ribbon", ...}) = 0 stat64("/RamTemp/a", {st_mode=S_IFDIR|0755, st_size=40, ...}) = 0 stat64(".", {st_mode=S_IFDIR|0755, st_size=40, ...}) = 0 getpid() = 1665 getppid() = 1664 getpgrp() = 1664 rt_sigaction(SIGCHLD, {0x80a9ed0, [], 0}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 open("/usr/libexec/mozilla-launcher", O_RDONLY|O_LARGEFILE) = 3 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfaa252c) = -1 ENOTTY (Inappropriate ioctl for device) _llseek(3, 0, [0], SEEK_CUR) = 0 read(3, "#!/bin/sh\n# \n# Stub script to ru"..., 80) = 80 _llseek(3, 0, [0], SEEK_SET) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 dup2(3, 255) = 255 close(3) = 0 fcntl64(255, F_SETFD, FD_CLOEXEC) = 0 fcntl64(255, F_GETFL) = 0x8000 (flags O_RDONLY|O_LARGEFILE) fstat64(255, {st_mode=S_IFREG|0755, st_size=266, ...}) = 0 _llseek(255, 0, [0], SEEK_CUR) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 read(255, "#!/bin/sh\n# \n# Stub script to ru"..., 266) = 266 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_IGN}, 8) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {0x80a9ed0, [], 0}, 8) = 0 execve("/usr/libexec/mozilla-launcher", ["/usr/libexec/mozilla-launcher"], [/* 83 vars */]) = 0 brk(0) = 0x81bb000 Is this still an issue or can we go ahead and close? This is still an issue. I have to run a script that unmerges mozilla-launcher and I do not consider it fixed. (In reply to comment #8) > This is still an issue. I have to run a script that unmerges mozilla-launcher > and I do not consider it fixed. Have you tried emerging the test ebuilds that jstubbs used as examples in comment #4? Have you tried upgrading to the latest portage? ( Portage 2.0.51.22-r2 on x86 ) Are there odd permissions on /usr/libexec/mozilla-launcher ( chattr +i for some crazy reason? ) When you go to upgrade mozilla-launcher do you get errors when portage attempts to write over that file? It will be difficult to pinpoint the root of the problem if we can't get more information. (In reply to comment #5) > I do not think it is a portage problem. After install it ran fine, > the problem occurrs apparently random. It still happens but I have > not been able to pinpoint the exact sequence of eventes leading to it yet. I'm not sure how you can make the statement that it isn't a portage problem. What leads you to believe that? I'm closing this bug for now because (1) nobody else is seeing this problem, (2) we don't have any evidence that this occurs on current versions of the packages for you. If the problem recurs, then please re-open this bug along with your current emerge --info, mozilla-launcher and browser versions, and the log of the installation. |