Adhemerval Zanella
b20b94006c
support: Skip malloc hugetlb={1,2} variants when kernel cannot honor them
...
The malloc test variants run with GLIBC_TUNABLES=glibc.malloc.hugetlb=1
exercise transparent huge pages via MADV_HUGEPAGE, which is only
meaningful when /sys/kernel/mm/transparent_hugepage/enabled is set to
'madvise' ('always' makes the madvise redundant and 'never' makes it
ineffective). The hugetlb=2 variants rely on MAP_HUGETLB, which
requires a positive /proc/sys/vm/nr_hugepages. On systems that do not
satisfy these prerequisites - including any non-Linux target - those
runs only consume CPU time in this case.
Add support/support_check_hugetlb.{c,h} exposing:
- support_thp_is_madvise: true iff THP is in 'madvise' mode;
- support_hugepages_reserved: true iff nr_hugepages > 0;
- support_check_malloc_hugetlb: inspects GLIBC_TUNABLES and calls
FAIL_UNSUPPORTED when the requested hugetlb mode cannot be honored.
Gate the check at compile time so only the variant binaries pay for
it.
Reviewed-by: DJ Delorie <dj@redhat.com >
2026-05-27 15:51:21 -03:00
..
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-04-01 12:22:26 +00:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-05-27 15:51:21 -03:00
2026-03-12 13:49:50 -03:00
2026-03-10 12:17:52 +00:00
2026-04-07 14:25:49 +00:00
2026-05-20 10:38:59 +01:00
2026-01-01 13:42:29 -08:00
2026-03-04 09:04:14 +00:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-03-04 09:04:14 +00:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-03-15 21:24:00 +01:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-03-04 09:04:14 +00:00
2026-01-01 13:42:29 -08:00
2023-05-08 16:40:10 -04:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-05-08 09:40:40 +01:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-15 16:19:50 -05:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-05-08 09:40:40 +01:00
2026-05-08 09:40:40 +01:00
2026-03-10 12:17:52 +00:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2022-01-26 10:38:23 -07:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-05-08 09:40:40 +01:00
2026-01-01 13:42:29 -08:00
2026-05-08 09:40:40 +01:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2026-05-08 09:40:40 +01:00
2026-01-01 13:42:29 -08:00
2026-01-01 13:42:29 -08:00
2025-11-19 13:47:53 -03:00