[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-dbus
Subject:    Re: dbus_connection_send_with_reply_and_block eats 100% CPU then eventually times out
From:       Ralf Habacker <ralf () habacker ! de>
Date:       2015-02-03 13:17:19
Message-ID: 54D0CA5F.40006 () habacker ! de
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Am 03.02.2015 um 07:51 schrieb Alex Brooks:
> Hi Ralf,
>
> I tried with the modifications you suggest (tracking number of
> iterations and time).
> There's a magic number: in all cases it starts failing after 300274
> iterations (100% repeatable):
That is what I recognized too.

I filed a bug for it https://bugs.freedesktop.org/show_bug.cgi?id=88896.

With the interface test app
https://bugs.freedesktop.org/attachment.cgi?id=113094 I tried to check
several interfaces to get an idea where the problem belongs too and got
the following results:

              path                                    results
1. /org/freedesktop/DBus  -> no problem
2. /org/freedesktop/login1 -> no problem
3. /fi/w1/wpa_supplicant1 -> no problem
4. /fi/w1/wpa_supplicant1/Interfaces/7  [1] -> with problems ...

[1] number may be different on your system

Probably a problem inside wpa_supplicant. .

> ... wait ~55min ...
You can remove the usleep() call to short the time until the problem
occurs (in the mentioned bug problems occurs after 8 minutes)

Ralf

>
> Alex
>
>
> On 01/02/15 03:12, Ralf Habacker wrote:
>>
>> Am 31.01.2015 um 16:10 schrieb Ralf Habacker:
>>>
>>> Am 31.01.2015 um 14:49 schrieb Ralf Habacker:
>>>>  
>>>>> 5 19:27, "Ralf Habacker" <ralf@habacker.de
>>>>> <mailto:ralf@habacker.de>> wrote:
>>>>>
>>>>>
>>>>>     Am 31.01.2015 um 05:04 schrieb Alex Brooks:
>>>>>     > Hi,
>>>>>     >
>>>>>     > I've been fighting for a long time with what now looks like
>>>>>     a libdbus
>>>>>     > bug.
>>>>>     > I have a cut-down test program which calls a dbus method of
>>>>>     > wpa_supplicant at 100Hz, it does this happily for several
>>>>>     hours then
>>>>>     > at some point the behaviour changes: any future calls sit at
>>>>>     100% CPU
>>>>>     > for 25sec then time out.
>>>>>
>>> After running about 54 minutes I got:
>>>
>>>  counts      time (ms)
>>> 300272 3245606 signalInfo rssi=-63
>>> 300273 3245616 signalInfo rssi=-63
>>> Error: wpa_supplicant DBus error in signalPoll: Did not receive a
>>> reply. Possible causes include: the remote application did not send
>>> a reply, the message bus security policy blocked the reply, the
>>> reply timeout expired, or the network connection was broken.
>>>
>> second run gave same results:
>> ...
>>
>> 300272 3548324 1 signalInfo rssi=-57
>> 300273 3548413 79 signalInfo rssi=-59
>> Error: wpa_supplicant DBus error in signalPoll: Did not receive a
>> reply. Possible causes include: the remote application did not send a
>> reply, the message bus security policy blocked the reply, the reply
>> timeout expired, or the network connection was broken.
>>
>> Sounds as a kind of limits reached. The counts are collected as shown
>> below:
>>
>>     while ( true )
>>     {
>>         try {
>>             int a = timer.elapsed();
>>             int rssi = signalPoll( *netDevInterfaceInterface_ );
>>             int b = timer.elapsed();
>>             cout << i++ << " " << b << " " << (b-a) << " signalInfo
>> rssi=" << rssi << endl;
>>         }
>>
>>> Ralf
>>>
>>>
>>> _______________________________________________
>>> dbus mailing list
>>> dbus@lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/dbus
>>
>
>
> -- 
> ------------------------------
> Dr Alex Brooks
> Marathon Targets Pty Ltd
> Ph: +61 2 8090 7202
> Web: www.marathon-targets.com
> ------------------------------
>
>
> _______________________________________________
> dbus mailing list
> dbus@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dbus


[Attachment #5 (text/html)]

<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <div class="moz-cite-prefix">Am 03.02.2015 um 07:51 schrieb Alex
      Brooks:<br>
    </div>
    <blockquote cite="mid:54D0700D.4090805@marathon-targets.com"
      type="cite">
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      <div class="moz-cite-prefix">Hi Ralf,<br>
        <br>
        I tried with the modifications you suggest (tracking number of
        iterations and time).<br>
        There's a magic number: in all cases it starts failing after
        300274 iterations (100% repeatable):<br>
      </div>
    </blockquote>
    That is what I recognized too. <br>
    <br>
    I filed a bug for it
    <a class="moz-txt-link-freetext" \
href="https://bugs.freedesktop.org/show_bug.cgi?id=88896">https://bugs.freedesktop.org/show_bug.cgi?id=88896</a>. \
<br>  <br>
    With the interface test app
    <a class="moz-txt-link-freetext" \
href="https://bugs.freedesktop.org/attachment.cgi?id=113094">https://bugs.freedesktop.org/attachment.cgi?id=113094</a> \
I tried to  check several interfaces to get an idea where the problem belongs
    too and got the following results:<br>
    <br>
                  path                                    results<br>
    1. /org/freedesktop/DBus  -&gt; no problem<br>
    2. /org/freedesktop/login1 -&gt; no problem<br>
    3. /fi/w1/wpa_supplicant1 -&gt; no problem<br>
    4. /fi/w1/wpa_supplicant1/Interfaces/7  [1] -&gt; with problems ...<br>
    <br>
    [1] number may be different on your system<br>
    <br>
    Probably a problem inside wpa_supplicant. . <br>
    <br>
    <blockquote cite="mid:54D0700D.4090805@marathon-targets.com"
      type="cite">
      <div class="moz-cite-prefix"> ... wait ~55min ...<br>
      </div>
    </blockquote>
    You can remove the usleep() call to short the time until the problem
    occurs (in the mentioned bug problems occurs after 8 minutes)<br>
    <br>
    Ralf<br>
    <br>
    <blockquote cite="mid:54D0700D.4090805@marathon-targets.com"
      type="cite">
      <div class="moz-cite-prefix"> <br>
        Alex<br>
        <br>
        <br>
        On 01/02/15 03:12, Ralf Habacker wrote:<br>
      </div>
      <blockquote cite="mid:54CCFEDA.5000703@habacker.de" type="cite">
        <meta content="text/html; charset=utf-8"
          http-equiv="Content-Type">
        <br>
        <div class="moz-cite-prefix">Am 31.01.2015 um 16:10 schrieb Ralf
          Habacker:<br>
        </div>
        <blockquote cite="mid:54CCF07F.5060902@habacker.de" type="cite">
          <meta content="text/html; charset=utf-8"
            http-equiv="Content-Type">
          <br>
          <div class="moz-cite-prefix">Am 31.01.2015 um 14:49 schrieb
            Ralf Habacker:<br>
          </div>
          <blockquote cite="mid:54CCDD4E.9060505@habacker.de"
            type="cite">
            <meta content="text/html; charset=utf-8"
              http-equiv="Content-Type">
             
            <blockquote
cite="mid:CAE8XxP-w5Fjbfd_ENdNh2sY=AOkgbnNfSuJF1N0ACVq+8mf2YA@mail.gmail.com"
              type="cite">
              <div class="gmail_quote">5 19:27, "Ralf Habacker" &lt;<a
                  moz-do-not-send="true" \
href="mailto:ralf@habacker.de">ralf@habacker.de</a>&gt;




                wrote:<br type="attribution">
                <blockquote class="gmail_quote" style="margin:0 0 0
                  .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
                  Am 31.01.2015 um 05:04 schrieb Alex Brooks:<br>
                  &gt; Hi,<br>
                  &gt;<br>
                  &gt; I've been fighting for a long time with what now
                  looks like a libdbus<br>
                  &gt; bug.<br>
                  &gt; I have a cut-down test program which calls a dbus
                  method of<br>
                  &gt; wpa_supplicant at 100Hz, it does this happily for
                  several hours then<br>
                  &gt; at some point the behaviour changes: any future
                  calls sit at 100% CPU<br>
                  &gt; for 25sec then time out.<br>
                </blockquote>
              </div>
            </blockquote>
          </blockquote>
          After running about 54 minutes I got: <br>
          <br>
           counts      time (ms) <br>
          300272 3245606 signalInfo rssi=-63<br>
          300273 3245616 signalInfo rssi=-63<br>
          Error: wpa_supplicant DBus error in signalPoll: Did not
          receive a reply. Possible causes include: the remote
          application did not send a reply, the message bus security
          policy blocked the reply, the reply timeout expired, or the
          network connection was broken.<br>
          <br>
        </blockquote>
        second run gave same results: <br>
        ...<br>
        <br>
        300272 3548324 1 signalInfo rssi=-57<br>
        300273 3548413 79 signalInfo rssi=-59<br>
        Error: wpa_supplicant DBus error in signalPoll: Did not receive
        a reply. Possible causes include: the remote application did not
        send a reply, the message bus security policy blocked the reply,
        the reply timeout expired, or the network connection was broken.<br>
        <br>
        Sounds as a kind of limits reached. The counts are collected as
        shown below:<br>
        <br>
            while ( true )<br>
            {<br>
                try {<br>
                    int a = timer.elapsed();<br>
                    int rssi = signalPoll( *netDevInterfaceInterface_ );<br>
                    int b = timer.elapsed();<br>
                    cout &lt;&lt; i++ &lt;&lt; " " &lt;&lt; b &lt;&lt; "
        " &lt;&lt; (b-a) &lt;&lt; " signalInfo rssi=" &lt;&lt; rssi
        &lt;&lt; endl;<br>
                }<br>
        <br>
        <blockquote cite="mid:54CCF07F.5060902@habacker.de" type="cite">
          Ralf <br>
          <br>
          <fieldset class="mimeAttachmentHeader"></fieldset>
          <br>
          <pre wrap="">_______________________________________________
dbus mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" \
href="mailto:dbus@lists.freedesktop.org">dbus@lists.freedesktop.org</a> <a \
moz-do-not-send="true" class="moz-txt-link-freetext" \
href="http://lists.freedesktop.org/mailman/listinfo/dbus">http://lists.freedesktop.org/mailman/listinfo/dbus</a>
 </pre>
        </blockquote>
        <br>
      </blockquote>
      <br>
      <br>
      <pre class="moz-signature" cols="72">-- 
------------------------------
Dr Alex Brooks
Marathon Targets Pty Ltd
Ph: +61 2 8090 7202
Web: <a moz-do-not-send="true" class="moz-txt-link-abbreviated" \
                href="http://www.marathon-targets.com">www.marathon-targets.com</a>
------------------------------
</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
dbus mailing list
<a class="moz-txt-link-abbreviated" \
href="mailto:dbus@lists.freedesktop.org">dbus@lists.freedesktop.org</a> <a \
class="moz-txt-link-freetext" \
href="http://lists.freedesktop.org/mailman/listinfo/dbus">http://lists.freedesktop.org/mailman/listinfo/dbus</a>
 </pre>
    </blockquote>
    <br>
  </body>
</html>


[Attachment #6 (text/plain)]

_______________________________________________
dbus mailing list
dbus@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dbus


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic