diff options
Diffstat (limited to 'memory/jemalloc/src/test/integration/MALLOCX_ARENA.c')
-rw-r--r-- | memory/jemalloc/src/test/integration/MALLOCX_ARENA.c | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/memory/jemalloc/src/test/integration/MALLOCX_ARENA.c b/memory/jemalloc/src/test/integration/MALLOCX_ARENA.c deleted file mode 100644 index 30c203ae6..000000000 --- a/memory/jemalloc/src/test/integration/MALLOCX_ARENA.c +++ /dev/null @@ -1,69 +0,0 @@ -#include "test/jemalloc_test.h" - -#define NTHREADS 10 - -static bool have_dss = -#ifdef JEMALLOC_DSS - true -#else - false -#endif - ; - -void * -thd_start(void *arg) -{ - unsigned thread_ind = (unsigned)(uintptr_t)arg; - unsigned arena_ind; - void *p; - size_t sz; - - sz = sizeof(arena_ind); - assert_d_eq(mallctl("arenas.extend", &arena_ind, &sz, NULL, 0), 0, - "Error in arenas.extend"); - - if (thread_ind % 4 != 3) { - size_t mib[3]; - size_t miblen = sizeof(mib) / sizeof(size_t); - const char *dss_precs[] = {"disabled", "primary", "secondary"}; - unsigned prec_ind = thread_ind % - (sizeof(dss_precs)/sizeof(char*)); - const char *dss = dss_precs[prec_ind]; - int expected_err = (have_dss || prec_ind == 0) ? 0 : EFAULT; - assert_d_eq(mallctlnametomib("arena.0.dss", mib, &miblen), 0, - "Error in mallctlnametomib()"); - mib[1] = arena_ind; - assert_d_eq(mallctlbymib(mib, miblen, NULL, NULL, (void *)&dss, - sizeof(const char *)), expected_err, - "Error in mallctlbymib()"); - } - - p = mallocx(1, MALLOCX_ARENA(arena_ind)); - assert_ptr_not_null(p, "Unexpected mallocx() error"); - dallocx(p, 0); - - return (NULL); -} - -TEST_BEGIN(test_MALLOCX_ARENA) -{ - thd_t thds[NTHREADS]; - unsigned i; - - for (i = 0; i < NTHREADS; i++) { - thd_create(&thds[i], thd_start, - (void *)(uintptr_t)i); - } - - for (i = 0; i < NTHREADS; i++) - thd_join(thds[i], NULL); -} -TEST_END - -int -main(void) -{ - - return (test( - test_MALLOCX_ARENA)); -} |