kded DCOP deadlock (kwallet/kpasswdserver)

Lubos Lunak l.lunak at suse.cz
Thu Mar 10 16:10:13 GMT 2005


On Thursday 10 of March 2005 11:14, Waldo Bastian wrote:
> On Thursday 10 March 2005 10:09, David Faure wrote:
> > The problem with kded being a single process / single thread, is when two
> > kded modules want to talk to each other using DCOP:
[...]
> > Waldo: is this the kind of thing that can be fixed with DCOP
> > transactions? Or... any ideas?
>
> Not sure, actually... the problem is that if checkAuth starts a DCOP
> transaction, it would still be possible that the checkAuth transaction gets
> handled while we are in the KWallet event-loop of the dialog and it would
> still deadlock.
>
> The only thing that I can think of is when the kpasswdserver would somehow
> stop processing requests altogether while KWallet has its dialog up.
>
> It's a bit hard to do that selectively for kpasswdserver only, but it is
> possible to stop handling incoming DCOP transaction altogether. Then there
> will still be a small race remaining wrt kpasswdserver transactions that
> have already started and are queued to be handled.

 Assuming the problem is caused only by the fact that kwallet re-enters the 
event loop in kded, then that should be fixed by kwallet not doing so. Doing 
something like that in kded is just asking for trouble.

-- 
Lubos Lunak
KDE developer
---------------------------------------------------------------------
SuSE CR, s.r.o.  e-mail: l.lunak at suse.cz , l.lunak at kde.org
Drahobejlova 27  tel: +420 2 9654 2373
190 00 Praha 9   fax: +420 2 9654 2374
Czech Republic   http://www.suse.cz/




More information about the kde-core-devel mailing list