[LTP] [PATCH v3 0/3] hugetlb/numa: migrate test helpers to libs/

Pradeep Susarla pradeep.susarla@gmail.com
Sun Oct 4 23:15:32 CEST 2026


From: Claude <noreply@anthropic.com>

This series moves the hugetlb test library and the numa cpuset helper
into the global libs/ location, following the tse_ naming scheme adopted
for the extended (non-core) libraries, and fixes an out-of-bounds write
found during review.

The remaining helpers from #1276 are left as follow-ups: numa_helper.c
still uses the legacy test API and should be rewritten before being
moved, and the placement of the single ksm_helper.c function is still
open.

Part of #1276

Changes in v3:
 - Split the two independent migrations into separate patches, as
   requested in review (hugetlb library vs write_node_cpusets()).
 - New patch 3/3: fix the out-of-bounds write in gather_node_cpus()
   when a node has no online CPUs, reported in review (pre-existing,
   predates the move).
 - Rebased onto current master; converted the newly added tests
   (hugemmap35, hugemmap36, hugemmap37, hugemmap38, hugemmap41) to the
   tse_hugetlb.h header.

Changes in v2:
 - Rebased onto the merged tse_ naming scheme (v1 still used tst_).
 - Fix the ksm02 link failure reported on v1: ksm02, ksm04, oom04 and
   oom05 now link -lltpnuma.
 - Use the standard LTPLIBS mechanism for the hugetlb tests instead of
   a hand-rolled Makefile.inc.
 - Size the per-CPU sysfs path buffer to avoid -Wformat-truncation.

Pradeep Susarla (3):
  hugetlb: Migrate test library to libs/
  numa: Move write_node_cpusets() into libs/numa
  numa: Fix out-of-bounds write in gather_node_cpus()

 .../lib/hugetlb.h => include/tse_hugetlb.h    | 11 ++--
 include/tse_numa.h                            | 13 ++++
 libs/hugetlb/Makefile                         | 11 ++++
 .../hugetlb.c => libs/hugetlb/tse_hugetlb.c   |  2 +-
 libs/numa/tse_numa.c                          | 58 +++++++++++++++++
 testcases/kernel/include/numa_helper.h        |  4 --
 testcases/kernel/lib/numa_cpuset.c            | 64 -------------------
 testcases/kernel/mem/hugetlb/Makefile         | 21 +-----
 testcases/kernel/mem/hugetlb/Makefile.inc     | 35 ----------
 .../kernel/mem/hugetlb/hugefallocate/Makefile |  4 +-
 .../hugetlb/hugefallocate/hugefallocate01.c   |  2 +-
 .../hugetlb/hugefallocate/hugefallocate02.c   |  2 +-
 .../kernel/mem/hugetlb/hugefork/Makefile      |  4 +-
 .../kernel/mem/hugetlb/hugefork/hugefork01.c  |  2 +-
 .../kernel/mem/hugetlb/hugefork/hugefork02.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/Makefile      |  4 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap01.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap02.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap04.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap05.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap06.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap07.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap08.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap09.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap10.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap11.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap12.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap13.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap14.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap15.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap16.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap17.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap18.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap19.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap20.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap21.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap22.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap23.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap24.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap25.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap26.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap27.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap28.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap29.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap30.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap31.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap32.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap34.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap35.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap36.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap37.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap38.c  |  2 +-
 .../kernel/mem/hugetlb/hugemmap/hugemmap41.c  |  2 +-
 .../kernel/mem/hugetlb/hugeshmat/Makefile     |  4 +-
 .../mem/hugetlb/hugeshmat/hugeshmat01.c       |  2 +-
 .../mem/hugetlb/hugeshmat/hugeshmat02.c       |  2 +-
 .../mem/hugetlb/hugeshmat/hugeshmat03.c       |  2 +-
 .../mem/hugetlb/hugeshmat/hugeshmat04.c       |  2 +-
 .../mem/hugetlb/hugeshmat/hugeshmat05.c       |  2 +-
 .../kernel/mem/hugetlb/hugeshmctl/Makefile    |  4 +-
 .../mem/hugetlb/hugeshmctl/hugeshmctl01.c     |  2 +-
 .../mem/hugetlb/hugeshmctl/hugeshmctl02.c     |  2 +-
 .../mem/hugetlb/hugeshmctl/hugeshmctl03.c     |  2 +-
 .../kernel/mem/hugetlb/hugeshmdt/Makefile     |  4 +-
 .../mem/hugetlb/hugeshmdt/hugeshmdt01.c       |  2 +-
 .../kernel/mem/hugetlb/hugeshmget/Makefile    |  4 +-
 .../mem/hugetlb/hugeshmget/hugeshmget01.c     |  2 +-
 .../mem/hugetlb/hugeshmget/hugeshmget02.c     |  2 +-
 .../mem/hugetlb/hugeshmget/hugeshmget03.c     |  2 +-
 .../mem/hugetlb/hugeshmget/hugeshmget05.c     |  2 +-
 .../mem/hugetlb/hugeshmget/hugeshmget06.c     |  2 +-
 testcases/kernel/mem/hugetlb/lib/Makefile     | 10 ---
 testcases/kernel/mem/ksm/Makefile             |  2 +
 testcases/kernel/mem/ksm/ksm_common.h         |  1 +
 testcases/kernel/mem/oom/Makefile             |  4 ++
 testcases/kernel/mem/oom/oom04.c              |  1 +
 testcases/kernel/mem/oom/oom05.c              |  1 +
 77 files changed, 175 insertions(+), 201 deletions(-)
 rename testcases/kernel/mem/hugetlb/lib/hugetlb.h => include/tse_hugetlb.h (87%)
 create mode 100644 libs/hugetlb/Makefile
 rename testcases/kernel/mem/hugetlb/lib/hugetlb.c => libs/hugetlb/tse_hugetlb.c (99%)
 delete mode 100644 testcases/kernel/lib/numa_cpuset.c
 delete mode 100644 testcases/kernel/mem/hugetlb/Makefile.inc
 delete mode 100644 testcases/kernel/mem/hugetlb/lib/Makefile

-- 
2.43.0



More information about the ltp mailing list