[PATCH 0/4] fs: mark selected blocking waits as freezable

From: Dai Junbing

Date: Wed May 27 2026 - 02:52:17 EST


Hi,

During suspend and resume, tasks blocked in some interruptible wait
paths may be unnecessarily woken due to freezer state transitions. This
can introduce avoidable activity in the suspend/resume path.

This series marks a small set of blocking waits as freezable in places
where the task sleeps without holding locks that would make freezing
unsafe. The goal is to avoid unnecessary wakeups during suspend/resume
while preserving the normal wakeup conditions of these paths.

The effect is more noticeable on systems with frequent suspend/resume
cycles, such as mobile devices.

This series currently covers:
- epoll_wait()-related waits
- select()/poll() waits
- blocking pipe read and FIFO open waits
- kjournald2 commit wait

Comments are welcome.

Dai Junbing (4):
eventpoll: mark ep_poll() sleep as freezable
jbd2: make kjournald2 commit wait freezable
pipe: mark blocking pipe read and FIFO open sleeps as freezable
select: make select() and poll() waits freezable

fs/eventpoll.c | 2 +-
fs/jbd2/journal.c | 2 +-
fs/pipe.c | 4 ++--
fs/select.c | 4 ++--
4 files changed, 6 insertions(+), 6 deletions(-)

--
2.25.1