Bug 154916

Summary: D-BUS pending calls blocks on poll
Product: [openSUSE] openSUSE 10.2 Reporter: Timo Hoenig <thoenig>
Component: BasesystemAssignee: Timo Hoenig <thoenig>
Status: VERIFIED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: dkukawka, suse-beta
Version: Alpha 1   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Upstream fix

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.