kded DCOP deadlock (kwallet/kpasswdserver)
Waldo Bastian
bastian at kde.org
Thu Mar 10 10:14:14 GMT 2005
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:
[Snip]
> ^ waits for DCOP call to KWallet to finish
[Snip]
> ^ while the dialog is up, kpasswdserver gets another DCOP request
[Snip]
> ^ KWallet is busy displaying a dialog
[Snip]
> 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.
Cheers,
Waldo
--
bastian at kde.org | Free Novell Linux Desktop 9 Evaluation Download
bastian at suse.com | http://www.novell.com/products/desktop/eval.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20050310/3289f455/attachment.sig>
More information about the kde-core-devel
mailing list