Re: dbus_connection_send_with_reply_and_block eats 100% CPU then eventually times out
Ralf Habacker <ralf-aVxs2ipq/[email protected]>
| Newsgroups | gmane.comp.freedesktop.dbus |
|---|---|
| Message-ID | <[email protected]> |
Am 31.01.2015 um 13:08 schrieb Alex Brooks: > > Hi Ralf, > > Do you have a wlan0 on that computer? > no, wlp3s0 .. need to use -i i wlps3so > > (also note that the method in question (signalpoll) is new in > wpa_supplicant v2.3). > -> updated + need to run as root > On 31 Jan 2015 19:27, "Ralf Habacker" <ralf-aVxs2ipq/[email protected] > <mailto:ralf-aVxs2ipq/[email protected]>> 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. > who eat's the cpu - dbus-daemon - wpa_supplicant - your client app > > > I don't think the problem is on the wpa_supplicant side: other > clients > > can simultaneously make this call without any problems, and > restarting > > the client fixes it. > you did a strace of the related processes ? > > > [I'm running at 100Hz because the faster I run this loop, the > faster> it reproduces the problem. CPU load sits below 20% before > I hit the > > bug]. > the test case contains while ( true ) { ... usleep(0.1 * 1e6); } which is 10H z got it running as root Ralf > > > > > I posted details and a sample program as a Qt bug report (I'm using > > the QDBus wrapper and thought it might be a Qt bug initially): > > https://bugreports.qt.io/browse/QTBUG-43550 > > > > Does anyone have any thoughts? > I compiled the testcase on opensuse 13.1 x86_64 and did run: > > sudo ./signalpoll > getNetDevObjectPath(wlan0) > getNetDevObjectPath : GetInterface result: QDBusMessage(type=Error, > service="", error name="fi.w1.wpa_supplicant1.InterfaceUnknown", error > message="wpa_supplicant knows nothing about this interface.", > signature="", contents=([]) ) > terminate called after throwing an instance of 'std::string' > > Regards > Ralf m > _______________________________________________ dbus mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/dbus