[TEST CASE] pending call stuck in poll bug

Havoc Pennington hp at redhat.com
Wed Mar 1 17:26:19 PST 2006


On Wed, 2006-03-01 at 19:25 -0500, John (J5) Palmieri wrote:
> 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.

If you look at _dbus_connection_block_pending_call(), after blocking on
the socket it scans the message queue for a reply. It needs to do that
_before_ blocking on the socket also, I would say.

Havoc




More information about the dbus mailing list