]> git.saurik.com Git - redis.git/blobdiff - deps/jemalloc/test/rallocm.c
Update to jemalloc 2.2.5
[redis.git] / deps / jemalloc / test / rallocm.c
index a8cadebc3d6175055f05ccf9267ed1889067f2cc..ccf326bb523d612273843f00dbf10962e7d53f94 100644 (file)
@@ -1,6 +1,8 @@
 #include <stdio.h>
 #include <stdlib.h>
+#include <unistd.h>
 #include <string.h>
+#include <assert.h>
 
 #define        JEMALLOC_MANGLE
 #include "jemalloc_test.h"
 int
 main(void)
 {
+       size_t pagesize;
        void *p, *q;
        size_t sz, tsz;
        int r;
 
        fprintf(stderr, "Test begin\n");
 
+       /* Get page size. */
+       {
+               long result = sysconf(_SC_PAGESIZE);
+               assert(result != -1);
+               pagesize = (size_t)result;
+       }
+
        r = JEMALLOC_P(allocm)(&p, &sz, 42, 0);
        if (r != ALLOCM_SUCCESS) {
                fprintf(stderr, "Unexpected allocm() error\n");
@@ -66,7 +76,7 @@ main(void)
        p = q;
        sz = tsz;
 
-       r = JEMALLOC_P(rallocm)(&q, &tsz, 8192, 0, 0);
+       r = JEMALLOC_P(rallocm)(&q, &tsz, pagesize*2, 0, 0);
        if (r != ALLOCM_SUCCESS)
                fprintf(stderr, "Unexpected rallocm() error\n");
        if (q == p)
@@ -78,7 +88,7 @@ main(void)
        p = q;
        sz = tsz;
 
-       r = JEMALLOC_P(rallocm)(&q, &tsz, 16384, 0, 0);
+       r = JEMALLOC_P(rallocm)(&q, &tsz, pagesize*4, 0, 0);
        if (r != ALLOCM_SUCCESS)
                fprintf(stderr, "Unexpected rallocm() error\n");
        if (tsz == sz) {
@@ -88,7 +98,7 @@ main(void)
        p = q;
        sz = tsz;
 
-       r = JEMALLOC_P(rallocm)(&q, &tsz, 8192, 0, ALLOCM_NO_MOVE);
+       r = JEMALLOC_P(rallocm)(&q, &tsz, pagesize*2, 0, ALLOCM_NO_MOVE);
        if (r != ALLOCM_SUCCESS)
                fprintf(stderr, "Unexpected rallocm() error\n");
        if (q != p)
@@ -99,7 +109,7 @@ main(void)
        }
        sz = tsz;
 
-       r = JEMALLOC_P(rallocm)(&q, &tsz, 16384, 0, ALLOCM_NO_MOVE);
+       r = JEMALLOC_P(rallocm)(&q, &tsz, pagesize*4, 0, ALLOCM_NO_MOVE);
        if (r != ALLOCM_SUCCESS)
                fprintf(stderr, "Unexpected rallocm() error\n");
        if (q != p)