network manager using small timeout polling timeouts
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
network-manager (Ubuntu) |
New
|
Low
|
Unassigned |
Bug Description
I've been trying to identify wakeup events that cause the CPU to wakeup from idle on a "idle" laptop on Ubuntu Eoan. The good news is that NetworkManager doesn't utilize much CPU when idle, however, it does seem to wakeup from poll()/epool_wait() system calls once every 4-5 seconds on timer timeouts and I was wondering if those are necessary as they keep the CPU from being idle.
I ran heath-check [1] for 1 hour to monitor NetworkManager. See the attached output. Look at the "Top polling system calls:" section and you see that poll() and epoll_wait() are polling with timeouts set to be 0.0 seconds, 6.0 and 4.0 seconds.
Also look at the "Polling system call analysis:" section and you see a breakdown of the poll()/epoll_wait() calls.
Recommendation:
1. Are the 4.0/6.0 poll waits necessary? Why a timeout every 4.0/6.0 seconds?
2. Why are there so many polls with zero timeouts? These normally occur when a quick peek at busy pool events on file descriptors occurs. Are these necessary?
Anyhow, this is quite low in priority, but it would be nice to get investigated and fixed just to reduce CPU wakeups.
References
[1] https:/