Re: [PATCH v2] memcg/functional: fix memcg_failcnt intermittent timeout by disabling swap

Li Wang <[email protected]> Wed, 5 Aug 2026 15:34:49 +0800
Newsgroups gmane.linux.ltp
Message-ID <[email protected]>
Hi Xuewen,

Xuewen Wang wrote:

> memcg_failcnt.sh tests the memory.failcnt counter by allocating
> reclaimable memory (mmap-anon/mmap-file/shm) beyond a tiny cgroup
> limit (1 page). It relies on the process being OOM-killed so that
> signal_memcg_process()'s wait loop exits.
> 
> With swap enabled the kernel usually still OOM-kills the process,
> but on arm64 reclaim (swap out) sometimes succeeds instead:
> usage_in_bytes stays at the limit and the process keeps running,
> so the wait loop times out (TBROK) intermittently.
> 
> Example failure on arm64 (kernel 6.6):
>   memcg_failcnt 2 TBROK: timed out on memory.usage_in_bytes 4096 0 8192
> 
> Disable swap around the allocation and re-enable it afterwards,
> mirroring what memcg_limit_in_bytes.sh already does for the same
> reclaimable memory types.

This fix make sense, but I'd rather go with a tidy way:

...
TST_SETUP=do_setup
TST_CLEANUP=do_cleanup

do_setup()
{
        memcg_setup
        swapoff -a
}

do_cleanup()
{
        swapon -a
        memcg_cleanup
}

...

My Red Hat email address is no longer used. Please CC my new
address for future versions:

  [email protected]
or:
  [email protected]

-- 
Regards,
Li Wang

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp