Bug 233216

Summary: kopete hangs in FUTEX_WAIT_PRIVATE
Product: [Applications] kdepimlibs Reporter: Kai Krakow <kai>
Component: kabcAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED WORKSFORME    
Severity: normal CC: kopete-bugs-null, lars.scheiter, tokoe
Priority: NOR    
Version: 4.4   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: GDB backtrace of kopete hanging in futex
Another hang
Another backtrace, gdb directly attached without interrupting kopete (v4.4.5)

Description Kai Krakow 2010-04-04 00:15:11 UTC
Version:            (using KDE 4.4.2)
Compiler:          gcc-Version 4.3.4 (Gentoo 4.3.4 p1.0, pie-10.1.5) 
OS:                Linux
Installed from:    Gentoo Packages

When I leave kopete idle for a long time (read: not actively using it), kopete freezes and can only be killed. Stracing the process shows that kopete is hanging in a futex:

futex(0xc900dd4, FUTEX_WAIT_PRIVATE, 1, NULL^C <unfinished ...>

I created a full backtrace with gdb and going to attach it.
Comment 1 Kai Krakow 2010-04-04 00:16:01 UTC
Created attachment 42469 [details]
GDB backtrace of kopete hanging in futex
Comment 2 Kai Krakow 2010-04-05 13:48:43 UTC
Created attachment 42502 [details]
Another hang

futex(0xda4bbec, FUTEX_WAIT_PRIVATE, 1, NULL^C <unfinished ...>
Comment 3 Roman Jarosz 2010-04-05 18:04:33 UTC
IMHO it's kdepim/KABC bug
Comment 4 Kai Krakow 2010-04-06 17:03:45 UTC
Yep I suspect that, too, because the backtrace includes kdepim/akonadi and I use the kaddressbook integration of kopete. The problem exists since Akonadi and KDEpim have a tighter integration - so since around 4.4.0.
Comment 5 Kai Krakow 2010-07-20 22:29:00 UTC
Created attachment 49346 [details]
Another backtrace, gdb directly attached without interrupting kopete (v4.4.5)

The problem is still there in kopete 4.4.5. Interestingly this hangs on my home machine (x86, P4-HT 3.2GHz) but never on my work machine (amd64, Athlon64 X2) neither on my laptop (P3 1GHz, single core).
Comment 6 Tobias Koenig 2010-09-18 14:16:55 UTC
Hej,

don't use the kresource compatibility bridges for kabc but the native Akonadi resources, please! The old kresource framework is known to have problems with nested event loops and multithreading, that's the whole reason why we started the Akonadi framework.

Ciao,
Tobias