Re: [PATCHv2] mm: khugepaged: make scan loops suspend aware
From: Sergey Senozhatsky
Date: Thu Feb 12 2026 - 01:34:58 EST
On (26/02/11 10:50), David Hildenbrand (Arm) wrote:
> On 2/11/26 04:15, Sergey Senozhatsky wrote:
> > A number of khugepaaged's loops, e.g. khugepaged_scan_mm_slot(),
> > are time unbound, which can become problematic during system
> > suspend:
> >
> > PM: suspend entry (s2idle)
> > Filesystems sync: 0.003 seconds
> > Freezing user space processes
> > Freezing user space processes completed (elapsed 0.003 seconds)
> > OOM killer disabled.
> > Freezing remaining freezable tasks
> > Freezing remaining freezable tasks failed after 20.004 seconds (1 tasks refusing to freeze, wq_busy=0):
> > task:khugepaged state:D stack:0 pid:1345 ppid:2 flags:0x00004000
> > Call Trace:
> > <TASK>
> > schedule+0x523/0x16a0
> > schedule_timeout+0x23b/0x6e0
> > io_schedule_timeout+0x3f/0x80
> > wait_for_completion_io_timeout+0xe4/0x170
> > submit_bio_wait+0x79/0xc0
> > swap_readpage+0x150/0x2d0
> > swap_cluster_readahead+0x3be/0x750
> > shmem_swapin+0xa7/0x100
> > shmem_swapin_folio+0xcd/0x2e0
> > shmem_get_folio+0x237/0x580
> > collapse_file+0x247/0x1280
> > hpage_collapse_scan_file+0x26e/0x380
> > khugepaged+0x43b/0x810
> > kthread+0xfb/0x120
> > </TASK>
> >
> > Make hpage_collapse_test_exit_or_disable() suspend aware so
> > that khugepaaged's scan loops can terminate in a timely manner
> > and let system enter the sleep state.
> >
>
> Do we want a Fixes: tag, and maybe backport this to stable kernels?
I can Cc stable, but I don't know about Fixes - we are adding something
that was never there, not fixing a regression.