<div dir="ltr"><div><br></div>Hi,<div><br></div><div>Here is what I am doing currently:</div><div><br></div><div>1. I am trying to carve out 10 MB memory area at the higher end of process address space using mmap (MAP_FIXED..). <br clear="all"><div><br></div><div><br></div><div>2. I created a new arena using arenas.extend mallctl</div><div><br></div><div>3. I am using mallocx/dallocx with MALLOCX_ARENA(arena) as documented. </div><div><br></div><div>The issue is how do I connect the arena to mmaped memory chunk ? I see that new arena never gets initialized and all allocations continue to happen from arena 0x0.</div><div>I thought thread.arena mallctl will connect the arena to mmapped chunk but it just creates a thread <-> arena mapping. </div><div><br></div><div>I looked at the sources to see if there is any other mallctl to create this association but there does not seem to be any, what am I missing here ?</div><div><br></div><div>And older sample program I found on this mailing list, uses following mallctl which is not supported in jemalloc 3.6.</div><div><br></div><div><br></div><div>snprintf(path, sizeof(path), "arena.%u.chunk.alloc", _arena);</div><div>  ret = __svm_mallctl(path, (void*)&_chunk_alloc, &sz, (void*)&_chunk_alloc, sizeof(void *));</div><div>  assert (ret == 0); </div><div><br></div><div>snprintf(path, sizeof(path), "arena.%u.chunk.dalloc", _arena);</div><div>  ret = __svm_mallctl(path, (void*)&_chunk_dalloc, &sz, (void*)&_chunk_dalloc, sizeof(void *));</div><div>  assert (ret == 0); </div><div><br></div><div><br></div><div>This basically is asking jemalloc to callback user defined functions, is this functionality still available in jemalloc ? Any inputs will be helpful. Thanks. </div><div><br></div><div><br></div><div><br></div>
</div></div>