So I added some debugging output to dbus. When it peaked, it spent over a third of the CPU entirely in get_recipients_from_list(). (This is dbus checking if an incoming signal matches any of the rules added by org.freedesktop.DBus.AddMatch -- i.e. signal subscriptions. It does this for every rule, for every connection.)
So we can reduce the time spent there by being more efficient, by reducing the number of subscriptions, or reducing the number of signals. Looking at which rules it's checking, the majority are subscriptions on NetworkManager. One per access point, one per device, from multiple connections. Could connectivity-cpp be a bit too subscription-greedy? I'm not sure that get_recipients_from_list is the only (or worst) culprit here. Just something I noticed. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to indicator-network in Ubuntu. https://bugs.launchpad.net/bugs/1480877 Title: Access points' "PropertiesChanged" dbus signals freeze UI on mobile devices Status in Canonical System Image: Confirmed Status in indicator-network package in Ubuntu: Incomplete Status in network-manager package in Ubuntu: Incomplete Bug description: Krillin, rc-proposed, r83 DESCRIPTION: I've been trying to track down the cause of the occasional UI freezes on my Krillin device, and I noticed that whenever the UI freezes for 2-4 seconds, I get a burst of "PropertiesChanged" signals in dbus-monitor Here's a log of what's shown in dbus-monitor: http://pastebin.ubuntu.com/11992322/ I'd guess the problem is in the code that actually catches the signals and acts accordingly. HOW TO REPRODUCE: 1) Move to a place where many wifi hotspots are available 2) Connect the device via USB and run "phablet-shell" and then "dbus-monitor" 3) Use the device while keeping an eye on dbus-monitor output To manage notifications about this bug go to: https://bugs.launchpad.net/canonical-devices-system-image/+bug/1480877/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp