On Wed, Dec 03, 2025 at 07:56:31PM +0800, Guopeng Zhang wrote: > Replace the manual sleep-and-retry logic in test_kmem_dead_cgroups() > with the new helper `cg_read_key_long_poll()`. This change improves > the robustness of the test by polling the "nr_dying_descendants" > counter in `cgroup.stat` until it reaches 0 or the timeout is exceeded. > > Additionally, increase the retry timeout to 8 seconds (from 5 seconds) > based on testing results: > - With 5-second timeout: 4/20 runs passed. > - With 8-second timeout: 20/20 runs passed. > > The 8 second timeout is based on stress testing of test_kmem_dead_cgroups() > under load: 5 seconds was occasionally not enough for reclaim of dying > descendants to complete, whereas 8 seconds consistently covered the observed > latencies. This value is intended as a generous upper bound for the > asynchronous reclaim and is not tied to any specific kernel constant, so it > can be adjusted in the future if reclaim behavior changes. Great! > > Signed-off-by: Guopeng Zhang > Reviewed-by: Shakeel Butt > --- > tools/testing/selftests/cgroup/test_kmem.c | 33 ++++++++++------------ > 1 file changed, 15 insertions(+), 18 deletions(-) Acked-by: Michal Koutný