Bug 154916 - D-BUS pending calls blocks on poll
Summary: D-BUS pending calls blocks on poll
Status: VERIFIED FIXED
Alias: None
Product: openSUSE 10.2
Classification: openSUSE
Component: Basesystem (show other bugs)
Version: Alpha 1
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Timo Hoenig
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-03 07:39 UTC by Timo Hoenig
Modified: 2007-06-05 09:57 UTC (History)
2 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
Upstream fix (2.71 KB, patch)
2006-03-03 07:41 UTC, Timo Hoenig
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Timo Hoenig 2006-03-03 07:39:37 UTC
There is an issue for pending calls taking very long until getting processed.  As there are many applications using pending calls for asynchronous IPC via D-BUS this will definitly hit us.  An easy example is starting hal-device-manger.  It takes several seconds to pop up.

I expect other (so far) unaccountable delays I have seen to be solved by getting rid of this bug.

Quote from J5 on the D-BUS list:

> I had a eureka moment and finally distilled the python introspect
> problem down to a simple C test case.  This is the cause of
> hal-device-manager taking ages to start up but I am not sure what the
> fix would be.
> 
> Basically it happens when you create two pending calls and then block on
> the one that you sent last.  My best guess is that the second pending
> call is starving the data from the socket without actually processing
> any of the data it doesn't care about.  When be block on the first
> pending call there is no data to read over the socket so it blocks for
> its specified timeout in poll.  When it times out the data is processed
> and the correct things happen.  Hopefully now that the problem is
> identified we can find a solution and package this as part of the test
> suite.
Comment 1 Timo Hoenig 2006-03-03 07:41:34 UTC
Created attachment 71101 [details]
Upstream fix
Comment 2 Timo Hoenig 2006-03-03 07:56:06 UTC
mbuild nouse-thoenig-9 provides D-BUS packages (i386) having the fix applied.
Comment 3 Timo Hoenig 2006-03-03 16:22:06 UTC
dbus-1 submitted to STABLE.

Closing.
Comment 4 Timo Hoenig 2006-03-15 15:21:30 UTC
This patch is harmful.
Comment 5 Timo Hoenig 2006-03-20 12:58:43 UTC
I'll investigate whether the fix in D-BUS CVS HEAD can be backported without side-effects.  Otherwise this one will be solved post Code 10.
Comment 6 Timo Hoenig 2006-05-16 09:48:26 UTC
Moving to 10.2.

Will most likely come along with a version update of D-BUS.
Comment 7 Timo Hoenig 2006-08-17 08:26:01 UTC
D-Bus 0.91 was submitted to STABLE which includes the proper fix.