dbus_pending_call_set_notify race

Alexander Larsson alexl at redhat.com
Fri Feb 9 08:44:25 PST 2007


On Thu, 2006-11-30 at 18:24 +0100, Alexander Larsson wrote:
> On Thu, 2006-11-30 at 12:00 -0500, Havoc Pennington wrote:
> 
> > Of course this is pretty inconvenient. Maybe instead of the idle 
> > handler, we could offer a function that essentially did the above - "set 
> > notify or return reply" - but even with that convenience function it's 
> > annoying, since your notifier will be run in the main loop thread and 
> > your set_notify_or_get_reply is in a different thread, and it's probably 
> > a pain to code things in two ways so you can handle the reply in either 
> > thread.
> 
> Yeah, the best thing would be handling it internally in dbus with an
> idle.

I hit this race in the wild today (I have a main loop thread and a
worker thread sent an async message). Is anyone working on a fix for
this? I can't figure out a workaround for it, and it makes threading
dbus apps quite unsafe. 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
                   alexl at redhat.com    alla at lysator.liu.se 
He's an old-fashioned zombie dwarf gone bad. She's a man-hating mutant 
research scientist fleeing from a Satanic cult. They fight crime! 



More information about the dbus mailing list