GNOME Bugzilla – Bug 356649
massive timer abuse in the gnome system tools backends
Last modified: 2006-09-30 21:55:45 UTC
The perl script that runs 24/7 does this: Net::DBus::Reactor->main->add_timeout (50, Net::DBus::Callback->new(method => \&Utils::Monitor::do_monitor_files)); This results in 20 wakeups per second. It's particularly humourously bad because of this: sub do_monitor_files { my ($event, $data, $func, $path, $object); return if (!$has_gamin); .... I don't even have Sys::Gamin on my system. The real fix for this problem is to get the fd to the gamin socket and register it with Reactor->main->add_read(). This seems to be somewhat impossible, though, as the Sys::Gamin code I found (on CPAN) doesn't let you know the fd. A workaround for now might be to do these three things: (a) massively scale back the poll rate (b) only poll when changes in the files will actually matter (c) don't poll at all if Sys::Gamin isn't even installed
probably fixed with new version: "- Avoid timeouts during file monitoring (garnacho)" feel free to reopen if that's not the case