← Back to team overview

touch-packages team mailing list archive

[Bug 1308136] Re: telephony-service-indicator is waking up every 4 seconds adding inotifies on paths that don't exist

 

Yep, still polling at the same rate doing inotify add watches:

root@ubuntu-phablet:~# strace -f  -p 2078
Process 2078 attached with 4 threads
[pid  2091] restart_syscall(<... resuming interrupted call ...> <unfinished ...>
[pid  2081] restart_syscall(<... resuming interrupted call ...> <unfinished ...>
[pid  2080] restart_syscall(<... resuming interrupted call ...> <unfinished ...>
[pid  2078] restart_syscall(<... resuming interrupted call ...> <unfinished ...>
[pid  2091] <... restart_syscall resumed> ) = 0
[pid  2091] clock_gettime(CLOCK_MONOTONIC, {4118, 702253017}) = 0
[pid  2091] inotify_add_watch(13, "/usr/local/share/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] inotify_add_watch(13, "/usr/share/ubuntu-touch/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] inotify_add_watch(13, "/etc/xdg/xdg-ubuntu-touch", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] clock_gettime(CLOCK_MONOTONIC, {4118, 704436632}) = 0
[pid  2091] poll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}], 2, 3997) = 0 (Timeout)
[pid  2091] clock_gettime(CLOCK_MONOTONIC, {4122, 706523555}) = 0
[pid  2091] inotify_add_watch(13, "/usr/local/share/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] inotify_add_watch(13, "/usr/share/ubuntu-touch/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] inotify_add_watch(13, "/etc/xdg/xdg-ubuntu-touch", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] clock_gettime(CLOCK_MONOTONIC, {4122, 708504478}) = 0
[pid  2091] poll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}], 2, 3992) = 0 (Timeout)
[pid  2091] clock_gettime(CLOCK_MONOTONIC, {4126, 705271171}) = 0
[pid  2091] inotify_add_watch(13, "/usr/local/share/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] inotify_add_watch(13, "/usr/share/ubuntu-touch/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] inotify_add_watch(13, "/etc/xdg/xdg-ubuntu-touch", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
[pid  2091] clock_gettime(CLOCK_MONOTONIC, {4126, 706779632}) = 0

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to telephony-service in
Ubuntu.
https://bugs.launchpad.net/bugs/1308136

Title:
  telephony-service-indicator is waking up every 4 seconds adding
  inotifies on paths that don't exist

Status in Telephony Service:
  Triaged
Status in “telephony-service” package in Ubuntu:
  Incomplete

Bug description:
  Daily wakeups tests show that telephony-service-indicator is not that
  idle on an "idle" system:

  http://ci.ubuntu.com/power/eventstat/image/3138/machine/6/task
  /telephony-service-indicator/details/

  It is waking up every 4 seconds on a poll() and doing two
  inotify_add_watch() calls on paths that don't exist, which wastes
  power on devices such as phones, e.g:

  Inotify watches added:
    PID  Process              Rate/Sec File
    2102 telephony-service-in    0.250 /usr/local/share/applications
    2102 telephony-service-in    0.250 /usr/share/ubuntu-touch/applications

  This can be observed with strace:

  poll([{fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 2, 3984) = 0 (Timeout)
  clock_gettime(CLOCK_MONOTONIC, {10864, 224048956}) = 0
  inotify_add_watch(8, "/usr/local/share/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
  inotify_add_watch(8, "/usr/share/ubuntu-touch/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
  clock_gettime(CLOCK_MONOTONIC, {10864, 229054297}) = 0
  poll([{fd=7, events=POLLIN}, {fd=8, events=POLLIN}], 2, 3987) = 0 (Timeout)
  clock_gettime(CLOCK_MONOTONIC, {10868, 227833482}) = 0
  inotify_add_watch(8, "/usr/local/share/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
  inotify_add_watch(8, "/usr/share/ubuntu-touch/applications", IN_MODIFY|IN_ATTRIB|IN_CLOSE_WRITE|IN_MOVED_FROM|IN_MOVED_TO|IN_CREATE|IN_DELETE|IN_DELETE_SELF|IN_MOVE_SELF|IN_UNMOUNT|IN_ONLYDIR) = -1 ENOENT (No such file or directory)
  clock_gettime(CLOCK_MONOTONIC, {10868, 233998598}) = 0

  Can these redundant polling checks be reduced or removed? Polling
  every 4 seconds is a little bit heavy handed IMHO.

To manage notifications about this bug go to:
https://bugs.launchpad.net/telephony-service/+bug/1308136/+subscriptions