On 8/25/26 10:57, Song Hu wrote: > hugetlb-soft-offline toggles /proc/sys/vm/enable_soft_offline between 1 > and 0 (test_soft_offline_common(1) then (0)) and leaves it at 0 when it > finishes, silently disabling soft offlining for the whole system after > the run. > > Save the original value before the test and restore it from an > atexit() handler, as hugepage_restore_settings_atexit() in > hugepage_settings.c already does. Use read_num()/write_num() from > vm_util instead of hand-rolled popen()/fopen() helpers. > > The restore handler must not call write_num(): on failure it > re-enters exit() through ksft_exit_fail_msg(), which is undefined > behavior from inside an atexit handler. A non-root run hits it > directly - the restore write fails the same way the write that > triggered the exit did. Restore with plain open()/write(), best > effort. > > Signed-off-by: Song Hu <[email protected]> > > ---
Acked-by: David Hildenbrand (Arm) <[email protected]> -- Cheers, David

