Bug 92226 - kded error: ICE default IO error handler doing an exit(), pid = 5821, errno = 9
Summary: kded error: ICE default IO error handler doing an exit(), pid = 5821, errno = 9
Status: RESOLVED FIXED
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: kded (show other bugs)
Version: unspecified
Platform: RedHat Enterprise Linux Linux
: NOR normal
Target Milestone: ---
Assignee: Unassigned bugs mailing-list
URL:
Keywords:
: 92217 92227 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-10-27 22:49 UTC by bazzoon
Modified: 2005-01-18 14:49 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
kdirwatch patch (766 bytes, patch)
2005-01-17 22:27 UTC, Waldo Bastian
Details
strace of unforked kded start, illustrates failure on x86_64 (505.84 KB, text/plain)
2005-01-18 00:54 UTC, Mike Benson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description bazzoon 2004-10-27 22:49:14 UTC
Version:            (using KDE KDE 3.3.1)
Installed from:    RedHat RPMs
Compiler:          gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7) Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --disable-libunwind-exceptions --with-system-zlib --enable-__cxa_atexit --host=x86_64-redhat-linux
OS:                Linux

Fedora 2 (x86_64)
I compiled the src rpm files from download.kde.org using this command:

rpmbuild --rebuild --target x86_64 kdeapp-src.rpm

here is lst lines of srtace kded

I read somewhere in kde bugs database that this also causes my konqueror to to be able to contact "cookie handler service".

$ strace kded

stat("/home/saqer/.kde/share/config/", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
access("/home/saqer/.kde/share/config/kdebugrc", W_OK) = -1 ENOENT (No such file or directory)
access("/home/saqer/.kde/share/config/kdebugrc", F_OK) = -1 ENOENT (No such file or directory)
access("/home/saqer/.kde/share/config", W_OK) = 0
lstat("/home/saqer/.kde/share/config/kdebugrc", 0x533c40) = -1 ENOENT (No such file or directory)
stat("/home/saqer/.kde/share/config/kdebugrc", 0x533c40) = -1 ENOENT (No such file or directory)
lstat("/home/saqer/.kde/share/config/kdebugrc", 0x533c40) = -1 ENOENT (No such file or directory)
stat("/home/saqer/.kde/share/config/kdebugrc", 0x533c40) = -1 ENOENT (No such file or directory)
stat("/home/saqer/.kde/share/config/kdebugrc", 0x7fbfffd590) = -1 ENOENT (No such file or directory)
stat("/usr/share/config/kdebugrc", ICE default IO error handler doing an exit(), pid = 18590, errno = 9
{st_mode=S_IFREG|0644, st_size=2084, ...}) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
open("/usr/share/config/kdebugrc", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=2084, ...}) = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=2084, ...}) = 0
mmap(NULL, 2084, PROT_READ, MAP_PRIVATE, 4, 0) = 0x2a95557000
fstat(4, {st_mode=S_IFREG|0644, st_size=2084, ...}) = 0
rt_sigaction(SIGBUS, {0x3d0df18e30, [], SA_ONESHOT|0x4000000}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=2084, ...}) = 0
munmap(0x2a95557000, 2084)              = 0
rt_sigaction(SIGBUS, {SIG_DFL}, NULL, 8) = 0
close(4)                                = 0
close(3)                                = 0
exit_group(255)                         = ?
Comment 1 Waldo Bastian 2004-10-28 00:00:50 UTC
*** Bug 92227 has been marked as a duplicate of this bug. ***
Comment 2 Waldo Bastian 2004-10-28 00:40:08 UTC
*** Bug 92217 has been marked as a duplicate of this bug. ***
Comment 3 bazzoon 2004-10-29 18:41:50 UTC
I have uninstalled kde-3.3.1 and installed instead kde-3.3.0 from Fedora developement tree. I still experience the same problem.

I did not have this problem with kde-3.2*
Comment 4 Gregorio Guidi 2005-01-12 11:53:52 UTC
see comment on bug 83320
Comment 5 Mike Benson 2005-01-16 12:41:31 UTC
I have this problem on FC2 x86_64, with the KDE packages from the KDE Redhat Project.

$ kded --version
Qt: 3.3.3
KDE: 3.3.2-1.2.2.kde
KDE Daemon: $Id: kded.cpp,v 1.94 2004/07/15 13:28:55 lunakl Exp $

The bug is quite reproducible.

If I do 

$ strace kded --nofork --sync

The end of the trace is as follows:
select(11, [10], NULL, NULL, {0, 0})    = 1 (in [10], left {0, 0})
read(10, "\0\0\0\26e67 /usr/share/gnome\n\0\0\0\0\te6"..., 3000) = 202
select(11, [10], NULL, NULL, {0, 0})    = 0 (Timeout)
select(11, [10], NULL, NULL, {0, 0})    = 0 (Timeout)
access("/usr/share/gnome/apps", F_OK)   = -1 ENOENT (No such file or directory)
stat("/usr/share/gnome/capplets", 0x7fbfffee50) = -1 ENOENT (No such file or directory)
fcntl(3, 0x402 /* F_??? */, 0x8000001c) = -1 ENOTDIR (Not a directory)
close(3)                                = 0
stat("/", {st_mode=S_IFDIR|0755, st_size=600, ...}) = 0
stat("/usr/share/gnome", {st_mode=S_IFDIR|0755, st_size=272, ...}) = 0
select(11, [10], NULL, NULL, {0, 0})    = 0 (Timeout)
access("/usr/share/gnome/capplets", F_OK) = -1 ENOENT (No such file or directory)
access("/home/mikb/.kde/share/apps/kconf_update", F_OK) = 0
lstat("/home/mikb/.kde/share/apps/kconf_update", {st_mode=S_IFDIR|0700, st_size=80, ...}) = 0
access("/usr/share/apps/kconf_update", F_OK) = 0
lstat("/usr/share/apps/kconf_update", {st_mode=S_IFDIR|0755, st_size=3312, ...}) = 0
stat("/home/mikb/.kde/share/apps/kconf_update", {st_mode=S_IFDIR|0700, st_size=80, ...}) = 0
open("/proc/sys/kernel/ngroups_max", O_RDONLY) = 3
read(3, "65536\n", 31)                  = 6
close(3)                                = 0
mmap(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a982ad000
getgroups(65536, [500])                 = 1
geteuid()                               = 500
write(10, "\0\0\0005", 4)               = 4
write(10, "M68 500 500 /home/mikb/.kde/shar"..., 53) = 53
munmap(0x2a982ad000, 266240)            = 0
select(11, [10], NULL, NULL, {0, 0})    = 1 (in [10], left {0, 0})
read(10, "\0\0\0-e68 /home/mikb/.kde/share/ap"..., 3000) = 118
select(11, [10], NULL, NULL, {0, 0})    = 0 (Timeout)
stat("/usr/share/apps/kconf_update", {st_mode=S_IFDIR|0755, st_size=3312, ...}) = 0
open("/proc/sys/kernel/ngroups_max", O_RDONLY) = 3
read(3, "65536\n", 31)                  = 6
close(3)                                = 0
mmap(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a982ad000
getgroups(65536, [500])                 = 1
geteuid()                               = 500
write(10, "\0\0\0*", 4)                 = 4
write(10, "M69 500 500 /usr/share/apps/kcon"..., 42) = 42
munmap(0x2a982ad000, 266240)            = 0
select(11, [10], NULL, NULL, {0, 0})    = 1 (in [10], left {0, 0})
read(10, "\0\0\0\"e69 /usr/share/apps/kconf_up"..., 3000) = 2598
select(11, [10], NULL, NULL, {0, 0})    = 0 (Timeout)
write(3, "\1\2\1\0\255\0\0\0\364\0\0\0", 12) = -1 EBADF (Bad file descriptor)
write(2, "ICE default IO error handler doi"..., 69ICE default IO error handler doing an exit(), pid = 29767, errno = 9
Comment 6 Waldo Bastian 2005-01-17 22:27:01 UTC
Mike: Can you attach the complete strace? Something in kded seems to close the file descriptor of the X Server connection, that's really weird.

The top of the strace points to KDirWatch because
fcntl(3, 0x402 /* F_??? */, 0x8000001c) seems to be 
fcntl(e->dn_fd, F_NOTIFY, mask) in kdirwatch.cpp line 571

Does the attach patch fix the problem?
Comment 7 Waldo Bastian 2005-01-17 22:27:50 UTC
Created attachment 9143 [details]
kdirwatch patch
Comment 8 Mike Benson 2005-01-18 00:54:35 UTC
Created attachment 9147 [details]
strace of unforked kded start, illustrates failure on x86_64

Waldo,

Attached is the full strace of the failure.

KDE seems to fail in multifarious ways with out kded, so this is getting
annoying!

I have only seen this problem with x86_64. I had a very similar setup on my old
P3 laptop (FC2, kde-redhat RPMs) and never saw this problem.

Regards,

Mike
Comment 9 Waldo Bastian 2005-01-18 14:49:19 UTC
Mike: Based on the trace I think that the patch in #7 fixes the problem.