New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unnecessary dbus traffic due to constant VM stats updates #3292

Open
qubesuser opened this Issue Nov 8, 2017 · 2 comments

Comments

Projects
None yet
3 participants
@qubesuser

Qubes OS version:

R4.0-rc2

Steps to reproduce the behavior:

  1. Run dbus-monitor and do nothing on the system

Expected behavior:

There should be no dbus traffic.

Actual behavior:

There is constant useless dbus traffic, mostly consisting of broadcasting updates of the "cpu_time" and "cpu_usage" properties for domains.

General notes:

This design is not ideal since it results in constant unnecessary wakeups and CPU usage.

Possible solutions:

  1. Remove dbus broadcasting of stats updates. If something needs to know about domain stats, it should call admin.vm.Stats itself when it needs it
  2. Activate the dbus broadcasting only while at least one application needs it. Use a separate dbus signal, so only apps that needs stats will be woken up, and not everyone who is listening for changes of persistent properties on domains. Fix all clients to not constantly listen for stats and instead enable and listen for stats only when needed (e.g. when the domain tray popup menu is open, for memory usage updates).
@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Nov 9, 2017

Member

As for the second point - currently there are only two applications listening for VM status changes, and one of them do need also stats. So, in practice the gain (of any solution here) would be minimal.
But indeed some better mechanism could be used, in future version.

Member

marmarek commented Nov 9, 2017

As for the second point - currently there are only two applications listening for VM status changes, and one of them do need also stats. So, in practice the gain (of any solution here) would be minimal.
But indeed some better mechanism could be used, in future version.

@qubesuser

This comment has been minimized.

Show comment
Hide comment
@qubesuser

qubesuser Nov 9, 2017

Assuming you are talking about the tray applets, they don't need stats when the menu isn't open.

qubesuser commented Nov 9, 2017

Assuming you are talking about the tray applets, they don't need stats when the menu isn't open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment