During system suspend/resume, processes in TASK_INTERRUPTIBLE sleep may be spuriously woken, causing measurable overhead. When many processes are in TASK_INTERRUPTIBLE state during frequent suspend/resume cycles, this overhead becomes non-trivial - observed particularly on Android mobile devices. Power instrumentation on my Android test device revealed numerous processes blocked in: - epoll_wait(2) - select(2) - poll(2) These processes experienced spurious wakeups during suspend/resume, contributing to power consumption. After optimizing these wakeups (driver modifications handled outside this patchset), measurements show 58% reduction in energy consumption during suspend/resume cycles. Therefore, minimizing spurious wakeups during suspend/resume transitions is essential for mobile power efficiency. Please review this series.. Dai Junbing (5): epoll: Make epoll_wait sleep freezable select/poll: Make sleep freezable pipe: Add TASK_FREEZABLE to read and open sleeps fuse: Add TASK_FREEZABLE to device read operations jbd2: Add TASK_FREEZABLE to kjournald2 thread fs/eventpoll.c | 2 +- fs/fuse/dev.c | 2 +- fs/jbd2/journal.c | 2 +- fs/pipe.c | 4 ++-- fs/select.c | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) -- 2.25.1