This patch moves the check of the return value from gethugepagesize() to a 
common function, check_hugepagesize(),
rather then repeating it in each test.  gethugepagesize() is updated to set 
errno depending on the reason for the failure.

Only tests that were already calling gethugepagesize() are calling 
check_hugepagesize().  Attached also is the output of the test suite run with 
16G pages on POWER before this change and after.

Changes since v4
        -save errno so that the same value can be returned on every call to 
gethugepagesize()
        -removed check_hugepagesize() call in linkhuge and linkshare since the 
return will be checked in morecore and elflink in part 2 of this patch
        -removed the call_gethugepagesize() function since linkhuge and 
linkshare no longer need it
 
Changes since v3
        -incorporated Mel Gorman's function that uses dlopen so that tests 
don't have to be linked against libhugetlbfs
        -used suggestions from Nishanth Aravamudan to use a static inline 
function and rename to check_hugepagesize()
        -added check_hugepagesize() call to linkhuge and linkshare tests


Signed-off-by: Jon Tollefson <[EMAIL PROTECTED]>
---

 hugeutils.c                         |   18 ++++++++++++++++--
 tests/alloc-instantiate-race.c      |    4 +---
 tests/brk_near_huge.c               |    4 +---
 tests/chunk-overcommit.c            |    4 +---
 tests/counters.c                    |    4 +---
 tests/direct.c                      |    4 +---
 tests/empty_mounts.c                |    6 +-----
 tests/heap-overflow.c               |    4 +---
 tests/huge_at_4GB_normal_below.c    |    4 +---
 tests/huge_below_4GB_normal_above.c |    4 +---
 tests/hugetests.h                   |   18 ++++++++++++++++++
 tests/icache-hygiene.c              |    4 +---
 tests/map_high_truncate_2.c         |    4 +---
 tests/misalign.c                    |    4 +---
 tests/misaligned_offset.c           |    4 +---
 tests/mlock.c                       |    4 +---
 tests/mmap-cow.c                    |    2 +-
 tests/mmap-gettest.c                |    2 +-
 tests/mprotect.c                    |    4 +---
 tests/private.c                     |    4 +---
 tests/ptrace-write-hugepage.c       |    4 +---
 tests/quota.c                       |    4 +---
 tests/readback.c                    |    4 +---
 tests/shared.c                      |    4 +---
 tests/shm-fork.c                    |    2 +-
 tests/shm-getraw.c                  |    2 +-
 tests/slbpacaflush.c                |    4 +---
 tests/straddle_4GB.c                |    4 +---
 tests/task-size-overrun.c           |    4 +---
 tests/truncate.c                    |    4 +---
 tests/truncate_above_4GB.c          |    4 +---
 tests/truncate_reserve_wraparound.c |    4 +---
 tests/truncate_sigbus_versus_oom.c  |    4 +---
 tests/unlinked_fd.c                 |    4 +---
 34 files changed, 66 insertions(+), 92 deletions(-)


diff -ru libhugetlbfs-dev-20080319.orig/hugeutils.c 
libhugetlbfs-dev-20080319/hugeutils.c
--- libhugetlbfs-dev-20080319.orig/hugeutils.c  2008-03-19 10:25:28.000000000 
-0500
+++ libhugetlbfs-dev-20080319/hugeutils.c       2008-04-10 14:20:20.654073968 
-0500
@@ -44,6 +44,7 @@
 
 static long hpage_size; /* = 0 */
 static char htlb_mount[PATH_MAX+1]; /* = 0 */
+static int hugepagesize_errno; /* = 0 */
 
 /********************************************************************/
 /* Internal functions                                               */
@@ -105,21 +106,34 @@
 /* Library user visible functions                                   */
 /********************************************************************/
 
+/*
+ * returns:
+ *   on success, size of a huge page in number of bytes
+ *   on failure, -1
+ *     errno set to ENOSYS if huge pages are not supported
+ *     errno set to EOVERFLOW if huge page size would overflow return type
+ */
 long gethugepagesize(void)
 {
        long hpage_kb;
        long max_hpage_kb = LONG_MAX / 1024;
 
-       if (hpage_size)
+       if (hpage_size) {
+               errno = hugepagesize_errno;
                return hpage_size;
+       }
+       errno = 0;
 
        hpage_kb = read_meminfo("Hugepagesize:");
        if (hpage_kb < 0) {
                hpage_size = -1;
+               errno = hugepagesize_errno = ENOSYS;
        } else {
-               if (hpage_kb > max_hpage_kb)
+               if (hpage_kb > max_hpage_kb) {
                        /* would overflow if converted to bytes */
                        hpage_size = -1;
+                       errno = hugepagesize_errno = EOVERFLOW;
+               }
                else
                        /* convert from kb to bytes */
                        hpage_size = 1024 * hpage_kb;
diff -ru libhugetlbfs-dev-20080319.orig/tests/alloc-instantiate-race.c 
libhugetlbfs-dev-20080319/tests/alloc-instantiate-race.c
--- libhugetlbfs-dev-20080319.orig/tests/alloc-instantiate-race.c       
2008-03-19 10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/alloc-instantiate-race.c    2008-04-09 
15:02:57.131126304 -0500
@@ -243,9 +243,7 @@
                CONFIG("Usage: alloc-instantiate-race <private|shared>");
        }
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/brk_near_huge.c 
libhugetlbfs-dev-20080319/tests/brk_near_huge.c
--- libhugetlbfs-dev-20080319.orig/tests/brk_near_huge.c        2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/brk_near_huge.c     2008-04-09 
15:00:55.892053320 -0500
@@ -74,9 +74,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/chunk-overcommit.c 
libhugetlbfs-dev-20080319/tests/chunk-overcommit.c
--- libhugetlbfs-dev-20080319.orig/tests/chunk-overcommit.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/chunk-overcommit.c  2008-04-09 
14:58:24.133094640 -0500
@@ -61,9 +61,7 @@
 
        totpages = read_meminfo("HugePages_Free:");
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/counters.c 
libhugetlbfs-dev-20080319/tests/counters.c
--- libhugetlbfs-dev-20080319.orig/tests/counters.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/counters.c  2008-04-09 15:00:23.748151472 
-0500
@@ -380,9 +380,7 @@
        test_init(argc, argv);
        saved_nr_hugepages = read_meminfo("HugePages_Total:");
        verify_dynamic_pool_support();
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        /*
         * This test case should require a maximum of 3 huge pages.
diff -ru libhugetlbfs-dev-20080319.orig/tests/direct.c 
libhugetlbfs-dev-20080319/tests/direct.c
--- libhugetlbfs-dev-20080319.orig/tests/direct.c       2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/direct.c    2008-04-09 15:01:09.134038752 
-0500
@@ -45,9 +45,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/empty_mounts.c 
libhugetlbfs-dev-20080319/tests/empty_mounts.c
--- libhugetlbfs-dev-20080319.orig/tests/empty_mounts.c 2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/empty_mounts.c      2008-04-10 
12:46:55.412063760 -0500
@@ -57,14 +57,10 @@
 
 int main(int argc, char *argv[])
 {
-       long hpage_size;
        int fd;
 
        test_init(argc, argv);
-
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/heap-overflow.c 
libhugetlbfs-dev-20080319/tests/heap-overflow.c
--- libhugetlbfs-dev-20080319.orig/tests/heap-overflow.c        2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/heap-overflow.c     2008-04-09 
14:59:37.859067344 -0500
@@ -39,9 +39,7 @@
        if (!getenv("HUGETLB_MORECORE"))
                CONFIG("Must have HUGETLB_MORECORE=yes");
 
-       hpagesize = gethugepagesize();
-       if (hpagesize < 0)
-               CONFIG("No hugepage support in kernel");
+       hpagesize = check_hugepagesize();
 
        freepages = read_meminfo("HugePages_Free:");
        if (freepages < 3)
diff -ru libhugetlbfs-dev-20080319.orig/tests/huge_at_4GB_normal_below.c 
libhugetlbfs-dev-20080319/tests/huge_at_4GB_normal_below.c
--- libhugetlbfs-dev-20080319.orig/tests/huge_at_4GB_normal_below.c     
2008-03-19 10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/huge_at_4GB_normal_below.c  2008-04-09 
15:03:25.593055816 -0500
@@ -52,9 +52,7 @@
 
        page_size = getpagesize();
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        if (sizeof(void *) <= 4)
                IRRELEVANT();
diff -ru libhugetlbfs-dev-20080319.orig/tests/huge_below_4GB_normal_above.c 
libhugetlbfs-dev-20080319/tests/huge_below_4GB_normal_above.c
--- libhugetlbfs-dev-20080319.orig/tests/huge_below_4GB_normal_above.c  
2008-03-19 10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/huge_below_4GB_normal_above.c       
2008-04-09 14:58:34.826066672 -0500
@@ -52,9 +52,7 @@
 
        page_size = getpagesize();
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        if (sizeof(void *) <= 4)
                IRRELEVANT();
diff -ru libhugetlbfs-dev-20080319.orig/tests/hugetests.h 
libhugetlbfs-dev-20080319/tests/hugetests.h
--- libhugetlbfs-dev-20080319.orig/tests/hugetests.h    2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/hugetests.h 2008-04-10 14:24:02.147077616 
-0500
@@ -20,6 +20,8 @@
 #ifndef _HUGETESTS_H
 #define _HUGETESTS_H
 
+#include <errno.h>
+#include <string.h>
 #define DEBUG
 
 /* Test return codes */
@@ -107,4 +109,20 @@
 /* stressutils.c stuff */
 int remove_shmid(int shmid);
 
+extern long gethugepagesize (void) __attribute__ ((weak));
+
+static inline long check_hugepagesize()
+{
+       long hpage_size = gethugepagesize();
+       if (hpage_size < 0) {
+               if (errno == ENOSYS)
+                       CONFIG("No hugepage kernel support\n");
+               else if (errno == EOVERFLOW)
+                       CONFIG("Hugepage size too large");
+               else
+                       CONFIG("Hugepage size (%s)", strerror(errno));
+       }
+       return hpage_size;
+}
+
 #endif /* _HUGETESTS_H */
diff -ru libhugetlbfs-dev-20080319.orig/tests/icache-hygiene.c 
libhugetlbfs-dev-20080319/tests/icache-hygiene.c
--- libhugetlbfs-dev-20080319.orig/tests/icache-hygiene.c       2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/icache-hygiene.c    2008-04-09 
15:01:57.726105784 -0500
@@ -188,9 +188,7 @@
                .sa_flags = SA_SIGINFO,
        };
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        err = sigaction(SIGILL, &sa, NULL);
        if (err)
diff -ru libhugetlbfs-dev-20080319.orig/tests/map_high_truncate_2.c 
libhugetlbfs-dev-20080319/tests/map_high_truncate_2.c
--- libhugetlbfs-dev-20080319.orig/tests/map_high_truncate_2.c  2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/map_high_truncate_2.c       2008-04-09 
15:02:49.771043264 -0500
@@ -63,9 +63,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        check_free_huge_pages(4);
 
diff -ru libhugetlbfs-dev-20080319.orig/tests/misalign.c 
libhugetlbfs-dev-20080319/tests/misalign.c
--- libhugetlbfs-dev-20080319.orig/tests/misalign.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/misalign.c  2008-04-09 14:57:57.377039664 
-0500
@@ -51,9 +51,7 @@
        test_init(argc, argv);
 
        page_size = getpagesize();
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/misaligned_offset.c 
libhugetlbfs-dev-20080319/tests/misaligned_offset.c
--- libhugetlbfs-dev-20080319.orig/tests/misaligned_offset.c    2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/misaligned_offset.c 2008-04-09 
14:58:55.055056992 -0500
@@ -76,9 +76,7 @@
        test_init(argc, argv);
 
        page_size = getpagesize();
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/mlock.c 
libhugetlbfs-dev-20080319/tests/mlock.c
--- libhugetlbfs-dev-20080319.orig/tests/mlock.c        2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/mlock.c     2008-04-09 15:02:36.256101328 
-0500
@@ -34,9 +34,7 @@
        int fd = hugetlbfs_unlinked_fd();
        void *p;
        int ret;
-       long hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       long hpage_size = check_hugepagesize();
 
        p = mmap(0, hpage_size, PROT_READ|PROT_WRITE, flags, fd, 0);
        if (p == MAP_FAILED)
diff -ru libhugetlbfs-dev-20080319.orig/tests/mmap-cow.c 
libhugetlbfs-dev-20080319/tests/mmap-cow.c
--- libhugetlbfs-dev-20080319.orig/tests/mmap-cow.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/mmap-cow.c  2008-04-09 14:59:04.758045352 
-0500
@@ -128,7 +128,7 @@
        if (wait_list == NULL)
                CONFIG("Couldn't allocate memory for wait_list\n");
 
-       hpage_size = gethugepagesize();
+       hpage_size = check_hugepagesize();
        /* Have to have enough available hugepages for each thread to
         * get its own copy, plus one for the parent/page-cache */
        size = (nr_hugepages / (threads+1)) * hpage_size;
diff -ru libhugetlbfs-dev-20080319.orig/tests/mmap-gettest.c 
libhugetlbfs-dev-20080319/tests/mmap-gettest.c
--- libhugetlbfs-dev-20080319.orig/tests/mmap-gettest.c 2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/mmap-gettest.c      2008-04-09 
15:02:11.423153056 -0500
@@ -115,7 +115,7 @@
        iter = atoi(argv[1]);
        nr_hugepages = atoi(argv[2]);
 
-       hpage_size = gethugepagesize();
+       hpage_size = check_hugepagesize();
        size = nr_hugepages * hpage_size;
 
        for (i=0; i < iter; i++) {
diff -ru libhugetlbfs-dev-20080319.orig/tests/mprotect.c 
libhugetlbfs-dev-20080319/tests/mprotect.c
--- libhugetlbfs-dev-20080319.orig/tests/mprotect.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/mprotect.c  2008-04-09 15:02:42.240126216 
-0500
@@ -187,9 +187,7 @@
        if (err)
                FAIL("Can't install SIGSEGV handler");
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/private.c 
libhugetlbfs-dev-20080319/tests/private.c
--- libhugetlbfs-dev-20080319.orig/tests/private.c      2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/private.c   2008-04-09 15:00:30.782141760 
-0500
@@ -40,9 +40,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/ptrace-write-hugepage.c 
libhugetlbfs-dev-20080319/tests/ptrace-write-hugepage.c
--- libhugetlbfs-dev-20080319.orig/tests/ptrace-write-hugepage.c        
2008-03-19 10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/ptrace-write-hugepage.c     2008-04-09 
15:02:24.002100568 -0500
@@ -107,9 +107,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/quota.c 
libhugetlbfs-dev-20080319/tests/quota.c
--- libhugetlbfs-dev-20080319.orig/tests/quota.c        2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/quota.c     2008-04-09 15:01:15.462141808 
-0500
@@ -185,9 +185,7 @@
 {
        test_init(argc, argv);
        mountpoint[0] = '\0';
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        get_quota_fs(hpage_size);
 
diff -ru libhugetlbfs-dev-20080319.orig/tests/readback.c 
libhugetlbfs-dev-20080319/tests/readback.c
--- libhugetlbfs-dev-20080319.orig/tests/readback.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/readback.c  2008-04-09 14:58:43.428089232 
-0500
@@ -38,9 +38,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/shared.c 
libhugetlbfs-dev-20080319/tests/shared.c
--- libhugetlbfs-dev-20080319.orig/tests/shared.c       2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/shared.c    2008-04-09 14:57:44.524125408 
-0500
@@ -40,9 +40,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/shm-fork.c 
libhugetlbfs-dev-20080319/tests/shm-fork.c
--- libhugetlbfs-dev-20080319.orig/tests/shm-fork.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/shm-fork.c  2008-04-09 14:59:16.034062616 
-0500
@@ -101,7 +101,7 @@
        if (numprocs > MAX_PROCS)
                CONFIG("Cannot spawn more than %d processes", MAX_PROCS);
 
-       hpage_size = gethugepagesize();
+       hpage_size = check_hugepagesize();
         size = hpage_size * nr_hugepages;
        verbose_printf("Requesting %lu bytes\n", size);
        if ((shmid = shmget(2, size, SHM_HUGETLB|IPC_CREAT|SHM_R|SHM_W )) < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/shm-getraw.c 
libhugetlbfs-dev-20080319/tests/shm-getraw.c
--- libhugetlbfs-dev-20080319.orig/tests/shm-getraw.c   2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/shm-getraw.c        2008-04-09 
15:03:07.080073272 -0500
@@ -51,7 +51,7 @@
 {
        size_t size;
        size_t i;
-       long hpage_size = gethugepagesize();
+       long hpage_size = check_hugepagesize();
        volatile char *shmaddr;
        char *buffer;
        int raw_fd;
diff -ru libhugetlbfs-dev-20080319.orig/tests/slbpacaflush.c 
libhugetlbfs-dev-20080319/tests/slbpacaflush.c
--- libhugetlbfs-dev-20080319.orig/tests/slbpacaflush.c 2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/slbpacaflush.c      2008-04-09 
14:57:32.481093032 -0500
@@ -62,9 +62,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/straddle_4GB.c 
libhugetlbfs-dev-20080319/tests/straddle_4GB.c
--- libhugetlbfs-dev-20080319.orig/tests/straddle_4GB.c 2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/straddle_4GB.c      2008-04-09 
15:03:34.620145624 -0500
@@ -36,9 +36,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        if (sizeof(void *) <= 4)
                TEST_BUG("64-bit only");
diff -ru libhugetlbfs-dev-20080319.orig/tests/task-size-overrun.c 
libhugetlbfs-dev-20080319/tests/task-size-overrun.c
--- libhugetlbfs-dev-20080319.orig/tests/task-size-overrun.c    2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/task-size-overrun.c 2008-04-09 
14:59:25.505082784 -0500
@@ -98,9 +98,7 @@
 
        verbose_printf("TASK_SIZE = 0x%lx\n", task_size);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/truncate_above_4GB.c 
libhugetlbfs-dev-20080319/tests/truncate_above_4GB.c
--- libhugetlbfs-dev-20080319.orig/tests/truncate_above_4GB.c   2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/truncate_above_4GB.c        2008-04-09 
15:03:16.004046736 -0500
@@ -78,9 +78,7 @@
        test_init(argc, argv);
 
        page_size = getpagesize();
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        check_free_huge_pages(3);
 
diff -ru libhugetlbfs-dev-20080319.orig/tests/truncate.c 
libhugetlbfs-dev-20080319/tests/truncate.c
--- libhugetlbfs-dev-20080319.orig/tests/truncate.c     2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/truncate.c  2008-04-09 14:59:47.078129968 
-0500
@@ -47,9 +47,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/truncate_reserve_wraparound.c 
libhugetlbfs-dev-20080319/tests/truncate_reserve_wraparound.c
--- libhugetlbfs-dev-20080319.orig/tests/truncate_reserve_wraparound.c  
2008-03-19 10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/truncate_reserve_wraparound.c       
2008-04-09 15:01:27.310070280 -0500
@@ -83,9 +83,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/truncate_sigbus_versus_oom.c 
libhugetlbfs-dev-20080319/tests/truncate_sigbus_versus_oom.c
--- libhugetlbfs-dev-20080319.orig/tests/truncate_sigbus_versus_oom.c   
2008-03-19 10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/truncate_sigbus_versus_oom.c        
2008-04-09 15:00:40.975055488 -0500
@@ -60,9 +60,7 @@
 
        totpages = read_meminfo("HugePages_Free:");
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)
diff -ru libhugetlbfs-dev-20080319.orig/tests/unlinked_fd.c 
libhugetlbfs-dev-20080319/tests/unlinked_fd.c
--- libhugetlbfs-dev-20080319.orig/tests/unlinked_fd.c  2008-03-19 
10:25:28.000000000 -0500
+++ libhugetlbfs-dev-20080319/tests/unlinked_fd.c       2008-04-09 
14:57:20.250090928 -0500
@@ -34,9 +34,7 @@
 
        test_init(argc, argv);
 
-       hpage_size = gethugepagesize();
-       if (hpage_size < 0)
-               CONFIG("No hugepage kernel support");
+       hpage_size = check_hugepagesize();
 
        fd = hugetlbfs_unlinked_fd();
        if (fd < 0)


tundro4:~/libhugetlbfs-dev-20080319.new # make func
         VERSION
zero_filesize_segment (32):     Bad toolchain: can't build this testcase
zero_filesize_segment (64):     Bad toolchain: can't build this testcase
test_root (32): PASS
test_root (64): PASS
meminfo_nohuge (32):    PASS
meminfo_nohuge (64):    PASS
gethugepagesize (32):   Bad configuration: No hugepage kernel support
gethugepagesize (64):   PASS
HUGETLB_VERBOSE=1 empty_mounts (32):    Bad configuration: Hugepage size too 
large
HUGETLB_VERBOSE=1 empty_mounts (64):    PASS
find_path (32): PASS
find_path (64): PASS
unlinked_fd (32):       Bad configuration: Hugepage size too large
unlinked_fd (64):       PASS
readback (32):  Bad configuration: Hugepage size too large
readback (64):  PASS
truncate (32):  Bad configuration: Hugepage size too large
truncate (64):  PASS
shared (32):    Bad configuration: Hugepage size too large
shared (64):    PASS
mprotect (32):  Bad configuration: Hugepage size too large
mprotect (64):  PASS
mlock (32):     Bad configuration: Hugepage size too large
mlock (64):     PASS
misalign (32):  Bad configuration: Hugepage size too large
misalign (64):  PASS
ptrace-write-hugepage (32):     Bad configuration: Hugepage size too large
ptrace-write-hugepage (64):     PASS
icache-hygiene (32):    Bad configuration: Hugepage size too large
icache-hygiene (64):    PASS
slbpacaflush (32):      Bad configuration: Hugepage size too large
slbpacaflush (64):      PASS (inconclusive)
straddle_4GB (64):      Bad configuration: Huge page size too large
huge_at_4GB_normal_below (64):  Bad configuration: Huge page size is too large
huge_below_4GB_normal_above (64):       Bad configuration: Huge page size is 
too large
map_high_truncate_2 (32):       Bad configuration: Hugepage size too large
map_high_truncate_2 (64):       Bad configuration: Must have at least 4 free 
hugepages
misaligned_offset (32): Bad configuration: Hugepage size too large
misaligned_offset (64): PASS (inconclusive)
truncate_above_4GB (32):        Bad configuration: Hugepage size too large
truncate_above_4GB (64):        Bad configuration: Must have at least 3 free 
hugepages
brk_near_huge (32):     Bad configuration: Hugepage size too large
brk_near_huge (64):     FAIL    mmap(): Invalid argument
task-size-overrun (32): Bad configuration: Hugepage size too large
task-size-overrun (64): PASS
stack_grow_into_huge (32):      Bad configuration: Stack rlimit must be 
'unlimited'
stack_grow_into_huge (64):      Bad configuration: Stack rlimit must be 
'unlimited'
private (32):   Bad configuration: Hugepage size too large
private (64):   PASS
direct (32):    Bad configuration: Hugepage size too large
direct (64):    PASS
malloc (32):    PASS
malloc (64):    PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc (32):    libhugetlbfs: 
ERROR: Hugepage size too large
FAIL    Address is not hugepage
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc (64):    PASS
malloc_manysmall (32):  PASS
malloc_manysmall (64):  PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc_manysmall (32):  
libhugetlbfs: ERROR: Hugepage size too large
FAIL    Address is not hugepage
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc_manysmall (64):  PASS
heapshrink (32):        PASS
heapshrink (64):        PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes heapshrink (32):        
libhugetlbfs: ERROR: Hugepage size too large
FAIL    Heap not on hugepages
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes heapshrink (64):        FAIL    
Heap did not shrink
HUGETLB_VERBOSE=1 HUGETLB_MORECORE=yes heap-overflow (32):      libhugetlbfs: 
ERROR: Hugepage size too large
Bad configuration: Hugepage size too large
HUGETLB_VERBOSE=1 HUGETLB_MORECORE=yes heap-overflow (64):      Bad 
configuration: Must have at least 3 free hugepages
HUGETLB_VERBOSE=0 linkhuge_nofd (32):   PASS
HUGETLB_VERBOSE=0 linkhuge_nofd (64):   PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_VERBOSE=0 linkhuge_nofd (32):        PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_VERBOSE=0 linkhuge_nofd (64):        PASS
HUGETLB_VERBOSE=0 xB.linkhuge_nofd (32):        PASS
HUGETLB_VERBOSE=0 xB.linkhuge_nofd (64):        PASS
HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (32):      PASS
HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (64):      PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (32):        PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (64):        PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (32):      PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (64):      PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (32):      PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (64):      PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (32):    PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (64):    PASS
linkhuge (32):  PASS
linkhuge (64):  PASS
LD_PRELOAD=libhugetlbfs.so linkhuge (32):       PASS
LD_PRELOAD=libhugetlbfs.so linkhuge (64):       PASS
xB.linkhuge (32):       libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 17526 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
xB.linkhuge (64):       Failed to map hugepage segment 0: 20000000-420000000 
(errno=22)
./run_tests.sh: line 34: 17528 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
xBDT.linkhuge (32):     libhugetlbfs: ERROR: Hugepage size too large
libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 17530 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
xBDT.linkhuge (64):     Failed to map hugepage segment 0: 10000000-410000000 
(errno=22)
./run_tests.sh: line 34: 17533 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xB.linkhuge (32):       libhugetlbfs: ERROR: Hugepage 
size too large
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 17536 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xB.linkhuge (64):       Failed to map hugepage segment 
0: 20000000-420000000 (errno=22)
./run_tests.sh: line 34: 17538 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xBDT.linkhuge (32):     libhugetlbfs: ERROR: Hugepage 
size too large
libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 17540 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xBDT.linkhuge (64):     Failed to map hugepage segment 
0: 10000000-410000000 (errno=22)
./run_tests.sh: line 34: 17543 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_ELFMAP=no xB.linkhuge (32):     PASS
HUGETLB_ELFMAP=no xB.linkhuge (64):     PASS
HUGETLB_ELFMAP=no xBDT.linkhuge (32):   PASS
HUGETLB_ELFMAP=no xBDT.linkhuge (64):   PASS
HUGETLB_SHARE=1 xB.linkshare (32):      libhugetlbfs: ERROR: Hugepage size too 
large
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 17552 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkshare (64):      Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 17554 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (32):    libhugetlbfs: ERROR: Hugepage size too 
large
libhugetlbfs: ERROR: Hugepage size too large
libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 17558 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (64):    Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 17561 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkshare (32):      libhugetlbfs: ERROR: Hugepage size too 
large
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 17565 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkshare (64):      Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 17567 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (32):    libhugetlbfs: ERROR: Hugepage size too 
large
libhugetlbfs: ERROR: Hugepage size too large
libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 17569 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (64):    Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 17572 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (32):       libhugetlbfs: ERROR: Hugepage size too 
large
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 17578 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (64):       Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 17580 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (32):       libhugetlbfs: ERROR: Hugepage size too 
large
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 17582 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (64):       Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 17584 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (32):     libhugetlbfs: ERROR: Hugepage size too 
large
libhugetlbfs: ERROR: Hugepage size too large
libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 17588 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (64):     Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 17591 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (32):     libhugetlbfs: ERROR: Hugepage size too 
large
libhugetlbfs: ERROR: Hugepage size too large
libhugetlbfs: ERROR: Hugepage size too large
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 17593 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (64):     Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 17596 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
chunk-overcommit (32):  Bad configuration: Hugepage size too large
chunk-overcommit (64):  PASS
alloc-instantiate-race shared (32):     Bad configuration: Hugepage size too 
large
alloc-instantiate-race shared (64):     PASS
alloc-instantiate-race private (32):    Bad configuration: Hugepage size too 
large
alloc-instantiate-race private (64):    PASS
truncate_reserve_wraparound (32):       Bad configuration: Hugepage size too 
large
truncate_reserve_wraparound (64):       PASS
truncate_sigbus_versus_oom (32):        Bad configuration: Hugepage size too 
large
truncate_sigbus_versus_oom (64):        PASS
quota (32):     Bad configuration: Hugepage size too large
quota (64):     PASS
counters (32):  Bad configuration: Hugepage size too large
counters (64):  FAIL    Line 336: Bad HugePages_Total: expected 0, actual 2
tundro4:~/libhugetlbfs-dev-20080319.orig # make func
         VERSION
zero_filesize_segment (32):     Bad toolchain: can't build this testcase
zero_filesize_segment (64):     Bad toolchain: can't build this testcase
test_root (32): PASS
test_root (64): PASS
meminfo_nohuge (32):    PASS
meminfo_nohuge (64):    PASS
gethugepagesize (32):   Bad configuration: No hugepage kernel support
gethugepagesize (64):   PASS
HUGETLB_VERBOSE=1 empty_mounts (32):    Bad configuration: No hugepage kernel 
support
HUGETLB_VERBOSE=1 empty_mounts (64):    PASS
find_path (32): PASS
find_path (64): PASS
unlinked_fd (32):       Bad configuration: No hugepage kernel support
unlinked_fd (64):       PASS
readback (32):  Bad configuration: No hugepage kernel support
readback (64):  PASS
truncate (32):  Bad configuration: No hugepage kernel support
truncate (64):  PASS
shared (32):    Bad configuration: No hugepage kernel support
shared (64):    PASS
mprotect (32):  Bad configuration: No hugepage kernel support
mprotect (64):  PASS
mlock (32):     Bad configuration: No hugepage kernel support
mlock (64):     PASS
misalign (32):  Bad configuration: No hugepage kernel support
misalign (64):  PASS
ptrace-write-hugepage (32):     Bad configuration: No hugepage kernel support
ptrace-write-hugepage (64):     PASS
icache-hygiene (32):    Bad configuration: No hugepage kernel support
icache-hygiene (64):    PASS
slbpacaflush (32):      Bad configuration: No hugepage kernel support
slbpacaflush (64):      PASS (inconclusive)
straddle_4GB (64):      Bad configuration: Huge page size too large
huge_at_4GB_normal_below (64):  Bad configuration: Huge page size is too large
huge_below_4GB_normal_above (64):       Bad configuration: Huge page size is 
too large
map_high_truncate_2 (32):       Bad configuration: No hugepage kernel support
map_high_truncate_2 (64):       Bad configuration: Must have at least 4 free 
hugepages
misaligned_offset (32): Bad configuration: No hugepage kernel support
misaligned_offset (64): PASS (inconclusive)
truncate_above_4GB (32):        Bad configuration: No hugepage kernel support
truncate_above_4GB (64):        Bad configuration: Must have at least 3 free 
hugepages
brk_near_huge (32):     Bad configuration: No hugepage kernel support
brk_near_huge (64):     FAIL    mmap(): Invalid argument
task-size-overrun (32): Bad configuration: No hugepage kernel support
task-size-overrun (64): PASS
stack_grow_into_huge (32):      Bad configuration: Stack rlimit must be 
'unlimited'
stack_grow_into_huge (64):      Bad configuration: Stack rlimit must be 
'unlimited'
private (32):   Bad configuration: No hugepage kernel support
private (64):   PASS
direct (32):    Bad configuration: No hugepage kernel support
direct (64):    PASS
malloc (32):    PASS
malloc (64):    PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc (32):    libhugetlbfs: 
ERROR: Hugepages unavailable
FAIL    Address is not hugepage
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc (64):    PASS
malloc_manysmall (32):  PASS
malloc_manysmall (64):  PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc_manysmall (32):  
libhugetlbfs: ERROR: Hugepages unavailable
FAIL    Address is not hugepage
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc_manysmall (64):  PASS
heapshrink (32):        PASS
heapshrink (64):        PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes heapshrink (32):        
libhugetlbfs: ERROR: Hugepages unavailable
FAIL    Heap not on hugepages
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes heapshrink (64):        FAIL    
Heap did not shrink
HUGETLB_VERBOSE=1 HUGETLB_MORECORE=yes heap-overflow (32):      libhugetlbfs: 
ERROR: Hugepages unavailable
Bad configuration: No hugepage support in kernel
HUGETLB_VERBOSE=1 HUGETLB_MORECORE=yes heap-overflow (64):      Bad 
configuration: Must have at least 3 free hugepages
HUGETLB_VERBOSE=0 linkhuge_nofd (32):   PASS
HUGETLB_VERBOSE=0 linkhuge_nofd (64):   PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_VERBOSE=0 linkhuge_nofd (32):        PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_VERBOSE=0 linkhuge_nofd (64):        PASS
HUGETLB_VERBOSE=0 xB.linkhuge_nofd (32):        PASS
HUGETLB_VERBOSE=0 xB.linkhuge_nofd (64):        PASS
HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (32):      PASS
HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (64):      PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (32):        PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (64):        PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (32):      PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (64):      PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (32):      PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xB.linkhuge_nofd (64):      PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (32):    PASS
HUGETLB_ELFMAP=no HUGETLB_VERBOSE=0 xBDT.linkhuge_nofd (64):    PASS
linkhuge (32):  PASS
linkhuge (64):  PASS
LD_PRELOAD=libhugetlbfs.so linkhuge (32):       PASS
LD_PRELOAD=libhugetlbfs.so linkhuge (64):       PASS
xB.linkhuge (32):       libhugetlbfs: ERROR: Couldn't map hugepage segment to 
copy data: Invalid argument
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 19486 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
xB.linkhuge (64):       Failed to map hugepage segment 0: 20000000-420000000 
(errno=22)
./run_tests.sh: line 34: 19488 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
xBDT.linkhuge (32):     libhugetlbfs: ERROR: Couldn't map hugepage segment to 
copy data: Invalid argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 19490 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
xBDT.linkhuge (64):     Failed to map hugepage segment 0: 10000000-410000000 
(errno=22)
./run_tests.sh: line 34: 19493 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xB.linkhuge (32):       libhugetlbfs: ERROR: Couldn't 
map hugepage segment to copy data: Invalid argument
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 19496 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xB.linkhuge (64):       Failed to map hugepage segment 
0: 20000000-420000000 (errno=22)
./run_tests.sh: line 34: 19498 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xBDT.linkhuge (32):     libhugetlbfs: ERROR: Couldn't 
map hugepage segment to copy data: Invalid argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 19500 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_MINIMAL_COPY=no xBDT.linkhuge (64):     Failed to map hugepage segment 
0: 10000000-410000000 (errno=22)
./run_tests.sh: line 34: 19503 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_ELFMAP=no xB.linkhuge (32):     PASS
HUGETLB_ELFMAP=no xB.linkhuge (64):     PASS
HUGETLB_ELFMAP=no xBDT.linkhuge (32):   PASS
HUGETLB_ELFMAP=no xBDT.linkhuge (64):   PASS
HUGETLB_SHARE=1 xB.linkshare (32):      libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 19512 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkshare (64):      Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 19514 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (32):    libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 19518 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (64):    Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 19521 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkshare (32):      libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 19525 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkshare (64):      Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 19527 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (32):    libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 19529 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkshare (64):    Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 19532 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (32):       libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 19538 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (64):       Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 19540 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (32):       libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
Failed to map hugepage segment 0: 20000000-20000000 (errno=22)
./run_tests.sh: line 34: 19542 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xB.linkhuge (64):       Failed to map hugepage segment 0: 
20000000-420000000 (errno=22)
./run_tests.sh: line 34: 19544 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (32):     libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 19548 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (64):     Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 19551 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (32):     libhugetlbfs: ERROR: Couldn't map 
hugepage segment to copy data: Invalid argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
libhugetlbfs: ERROR: Couldn't map hugepage segment to copy data: Invalid 
argument
Failed to map hugepage segment 0: 10000000-10000000 (errno=22)
./run_tests.sh: line 34: 19553 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
HUGETLB_SHARE=1 xBDT.linkhuge (64):     Failed to map hugepage segment 0: 
10000000-410000000 (errno=22)
./run_tests.sh: line 34: 19556 Aborted                 PATH="obj$BITS:$PATH" 
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:../obj$BITS" $ENV "$@"
chunk-overcommit (32):  Bad configuration: No hugepage kernel support
chunk-overcommit (64):  PASS
alloc-instantiate-race shared (32):     Bad configuration: No hugepage kernel 
support
alloc-instantiate-race shared (64):     PASS
alloc-instantiate-race private (32):    Bad configuration: No hugepage kernel 
support
alloc-instantiate-race private (64):    PASS
truncate_reserve_wraparound (32):       Bad configuration: No hugepage kernel 
support
truncate_reserve_wraparound (64):       PASS
truncate_sigbus_versus_oom (32):        Bad configuration: No hugepage kernel 
support
truncate_sigbus_versus_oom (64):        PASS
quota (32):     Bad configuration: No hugepage kernel support
quota (64):     PASS
counters (32):  Bad configuration: No hugepage kernel support
counters (64):  FAIL    Line 336: Bad HugePages_Total: expected 0, actual 2
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Libhugetlbfs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel

Reply via email to