Public bug reported: I was wondering why I was seeing lots of wakeup events on my idle system and tracked it down to containerd. Running eventstat for 1 sample over a 10 second interval one can observed that containerd is waking the system up nearly 10 times a second:
sudo eventstat 10 1 Event/s PID %CPU PR NI Task Init Function 13.45 2554 0.0 0 0 Xorg it_real_fn 9.53 1539 0.0 0 0 containerd hrtimer_wakeup 8.23 8862 0.0 0 0 Timer hrtimer_wakeup stracing the process one can see rapid futex/pselect calls: futex(0x55fad4c61010, FUTEX_WAIT, 0, {tv_sec=60, tv_nsec=0}) = 0 pselect6(0, NULL, NULL, NULL, {tv_sec=0, tv_nsec=20000}, NULL) = 0 (Timeout) futex(0x55fad4c61010, FUTEX_WAIT, 0, {tv_sec=60, tv_nsec=0}) = 0 pselect6(0, NULL, NULL, NULL, {tv_sec=0, tv_nsec=20000}, NULL) = 0 (Timeout) futex(0x55fad4c61010, FUTEX_WAIT, 0, {tv_sec=60, tv_nsec=0}) = 0 pselect6(0, NULL, NULL, NULL, {tv_sec=0, tv_nsec=20000}, NULL) = 0 (Timeout) futex(0x55fad4c61010, FUTEX_WAIT, 0, {tv_sec=60, tv_nsec=0}) = 0 The pselect6 system call is basically being used as a high resolution delay of ~20,000 nanoseconds before polling a futex. This is causing the high amount of system wakeups that stop the CPU from going into a deep C sleep state and it's eating power. Can this be fixed? ** Affects: containerd (Ubuntu) Importance: Medium Status: New ** Changed in: containerd (Ubuntu) Importance: Undecided => Medium -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1826684 Title: containerd is polling on a pselect ever 20,000 nanoseconds causing rapid system wakeup events To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/containerd/+bug/1826684/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs