GNOME Bugzilla – Bug 532176
gdm[<pid>]: WARNING: main daemon: Got SIGABRT. Something went very wrong. Going down! & Slow shutdown
Last modified: 2008-05-09 21:29:50 UTC
Please describe the problem: Ubuntu Hardy 8.04 with all the updates. Kernel: tested with 2.6.24-17.31-generic as well as 2.6.24-16.30-generic Symptom: Whenever I want to stop gdm or just shutdown my machine, I have to wait for 30 seconds before it retried and proceed to shutdown procedure. [Normally, it takes less than 10-15 seconds for the machine to shutdown completely] I caught an error in /var/log/syslog: May 8 19:09:04 Ephemeral-Dream gdm[30604]: WARNING: main daemon: Got SIGABRT. Something went very wrong. Going down! I have attached a system call strace. Steps to reproduce: 1. Shutdown the machine 2. tty1, sudo /etc/init.d/gdm stop/restart 3. Actual results: <Time> <Machine Name> gdm[<pid>] : WARNING: main daemon: Got SIGABRT. Something went very wrong. Going down! 30 seconds waiting till it is retry. Expected results: Normal termination/fully shutdown takes only around 15 seconds Does this happen every time? Yes Other information: System call Strace log: ---------------------- execve("/etc/init.d/gdm", ["/etc/init.d/gdm", "stop"], [/* 14 vars */]) = 0 brk(0) = 0x805e000 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) = 0xb7fd9000 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=52573, ...}) = 0 mmap2(NULL, 52573, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fcc000 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\260e\1"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=1364388, ...}) = 0 mmap2(NULL, 1369712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7e7d000 mmap2(0xb7fc6000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x149) = 0xb7fc6000 mmap2(0xb7fc9000, 9840, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fc9000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7e7c000 set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e7c6b0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 mprotect(0xb7fc6000, 4096, PROT_READ) = 0 munmap(0xb7fcc000, 52573) = 0 getpid() = 30524 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 geteuid32() = 0 brk(0) = 0x805e000 brk(0x807f000) = 0x807f000 getppid() = 30523 getcwd("/home/hoa", 4096) = 10 open("/etc/init.d/gdm", 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, {0x8055a30, ~[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#\n# Originally based "..., 8192) = 3134 stat64("/var/run/gdm.upgrade", 0xbfcf31f8) = -1 ENOENT (No such file or directory) stat64("/etc/gdm/gdm-cdd.conf", 0xbfcf31f8) = -1 ENOENT (No such file or directory) stat64("/usr/sbin/gdm", {st_mode=S_IFREG|0755, st_size=311244, ...}) = 0 geteuid32() = 0 stat64("/etc/default/locale", {st_mode=S_IFREG|0644, st_size=19, ...}) = 0 geteuid32() = 0 open("/etc/default/locale", O_RDONLY) = 3 fcntl64(3, F_DUPFD, 10) = 11 close(3) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 read(11, "LANG=\"en_SG.UTF-8\"\n", 8192) = 19 read(11, "", 8192) = 0 close(11) = 0 open("/lib/lsb/init-functions", O_RDONLY) = 3 fcntl64(3, F_DUPFD, 10) = 11 close(3) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 read(11, "# /lib/lsb/init-functions for De"..., 8192) = 8192 read(11, " if log_use_fancy_output; "..., 8192) = 300 stat64("/etc/lsb-base-logging.sh", {st_mode=S_IFREG|0644, st_size=3820, ...}) = 0 open("/etc/lsb-base-logging.sh", O_RDONLY) = 3 fcntl64(3, F_DUPFD, 10) = 12 close(3) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 read(12, "# Default init script logging fu"..., 8192) = 3820 read(12, "", 8192) = 0 close(12) = 0 read(11, "", 8192) = 0 close(11) = 0 open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 fcntl64(1, F_DUPFD, 10) = 11 close(1) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 fcntl64(2, F_DUPFD, 10) = 12 close(2) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 dup2(1, 2) = 2 stat64("/sbin/usplash_write", {st_mode=S_IFREG|0755, st_size=3700, ...}) = 0 write(1, "usplash_write is /sbin/usplash_w"..., 37) = 37 dup2(11, 1) = 1 close(11) = 0 dup2(12, 2) = 2 close(12) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30525 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30525 --- SIGCHLD (Child exited) @ 0 (0) --- pipe([3, 4]) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30526 close(4) = 0 read(3, "/dev/tty1\n", 128) = 10 read(3, "", 128) = 0 --- SIGCHLD (Child exited) @ 0 (0) --- close(3) = 0 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30526 stat64("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=9428, ...}) = 0 geteuid32() = 0 stat64("/usr/bin/expr", {st_mode=S_IFREG|0755, st_size=33012, ...}) = 0 geteuid32() = 0 open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 fcntl64(1, F_DUPFD, 10) = 11 close(1) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 fcntl64(2, F_DUPFD, 10) = 12 close(2) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 dup2(1, 2) = 2 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30527 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30527 --- SIGCHLD (Child exited) @ 0 (0) --- dup2(11, 1) = 1 close(11) = 0 dup2(12, 2) = 2 close(12) = 0 open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 fcntl64(1, F_DUPFD, 10) = 11 close(1) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 fcntl64(2, F_DUPFD, 10) = 12 close(2) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 dup2(1, 2) = 2 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30528 --- SIGCHLD (Child exited) @ 0 (0) --- wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30528 dup2(11, 1) = 1 close(11) = 0 dup2(12, 2) = 2 close(12) = 0 open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 fcntl64(1, F_DUPFD, 10) = 11 close(1) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 fcntl64(2, F_DUPFD, 10) = 12 close(2) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 dup2(1, 2) = 2 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30529 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30529 --- SIGCHLD (Child exited) @ 0 (0) --- dup2(11, 1) = 1 close(11) = 0 dup2(12, 2) = 2 close(12) = 0 pipe([3, 4]) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30530 --- SIGCHLD (Child exited) @ 0 (0) --- close(4) = 0 read(3, "80\n", 128) = 3 read(3, "", 128) = 0 close(3) = 0 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30530 pipe([3, 4]) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30531 --- SIGCHLD (Child exited) @ 0 (0) --- close(4) = 0 read(3, "73\n", 128) = 3 read(3, "", 128) = 0 close(3) = 0 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30531 write(1, " * Stopping GNOME Display Manage"..., 43) = 43 pipe([3, 4]) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30532 close(4) = 0 --- SIGCHLD (Child exited) @ 0 (0) --- read(3, "79\n", 128) = 3 read(3, "", 128) = 0 close(3) = 0 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30532 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30533 --- SIGCHLD (Child exited) @ 0 (0) --- wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30533 write(1, " ", 1) = 1 open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 fcntl64(1, F_DUPFD, 10) = 11 close(1) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 fcntl64(2, F_DUPFD, 10) = 12 close(2) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 dup2(1, 2) = 2 stat64("/sbin/start-stop-daemon", {st_mode=S_IFREG|0755, st_size=18948, ...}) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30534 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30534 --- SIGCHLD (Child exited) @ 0 (0) --- dup2(11, 1) = 1 close(11) = 0 dup2(12, 2) = 2 close(12) = 0 open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 3 fcntl64(1, F_DUPFD, 10) = 11 close(1) = 0 fcntl64(11, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 fcntl64(2, F_DUPFD, 10) = 12 close(2) = 0 fcntl64(12, F_SETFD, FD_CLOEXEC) = 0 dup2(1, 2) = 2 write(1, "usplash_write is a tracked alias"..., 57) = 57 dup2(11, 1) = 1 close(11) = 0 dup2(12, 2) = 2 close(12) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30557 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30557 --- SIGCHLD (Child exited) @ 0 (0) --- pipe([3, 4]) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30558 --- SIGCHLD (Child exited) @ 0 (0) --- close(4) = 0 read(3, "/dev/tty1\n", 128) = 10 read(3, "", 128) = 0 close(3) = 0 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30558 stat64("/usr/bin/tput", {st_mode=S_IFREG|0755, st_size=9428, ...}) = 0 geteuid32() = 0 write(1, "\r", 1) = 1 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7c6f8) = 30559 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 30559 --- SIGCHLD (Child exited) @ 0 (0) --- write(1, "[ OK ]\n", 7) = 7 exit_group(0) = ? Process 30524 detached
I suspect this is a duplicate of bug #517526. Could you test to see if the patch provided in that bug report helps? *** This bug has been marked as a duplicate of 517526 ***
Hi, pardon me, but may you tell me how to patch the file. I am quite new to Linux especially patching stuff. Thank you very much.
I'd apply the patch in comment #26 and #37. To apply each patch cd into the gdm/daemon directory and run this command patch -p0 < (patch name) Then run autogen.sh from the top-level directory, then "make" then "make install". Brian