On Wed, Nov 24, 2021 at 11:43:05AM +0100, Vlastimil Babka wrote: > >> Any thoughts? For now I can just hack around this by skipping > >> reclaim_throttle if cgroup_reclaim() == true, but that's probably not > >> the correct fix. :) > >> > > > > No, it wouldn't be but a possibility is throttling for only 1 jiffy if > > reclaiming within a memcg and the zone is balanced overall. > > > > The interruptible part should just be the patch below. I need to poke at > > the cgroup limit part a bit > > As the throttle timeout is short anyway, will the TASK_UNINTERRUPTIBLE vs > TASK_INTERRUPTIBLE make a difference for the (ability to kill? AFAIU > typically this inability to kill is because of a loop that doesn't check for > fatal_signal_pending(). > Yep, and the fatal_signal_pending() is lacking within reclaim in general but I'm undecided on how much that should change in the context of reclaim throttling but at minimum, I don't want the signal delivery to be masked or delayed. -- Mel Gorman SUSE Labs