Home | History | Annotate | Download | only in src

Lines Matching refs:arenas

54 /* Protects arenas initialization. */
57 * Arenas that are used to service external requests. Not all elements of the
58 * arenas array are necessarily used; arenas are created lazily as needed.
60 * arenas[0..narenas_auto) are used for automatic multiplexing of threads and
61 * arenas. arenas[narenas_auto..narenas_total) are only used if the application
64 arena_t **arenas;
66 static arena_t *a0; /* arenas[0]; read-only after initialization. */
412 atomic_write_p((void **)&arenas[ind], arena);
436 /* Create a new arena and insert it into the arenas array at index ind. */
449 * Another thread may have already initialized arenas[ind] if it's an
563 * Copy to tdata array. It's possible that the actual number of arenas
566 * the arenas.extend mallctl, which we trust mallctl synchronization to
633 * arena, in case all extant arenas are in use.
637 * versus uninitialized arenas, due to the
650 * arena if all arenas are already initialized.
1376 if (malloc_mutex_init(&arenas_lock, "arenas", WITNESS_RANK_ARENAS))
1384 arenas = &a0;
1385 memset(arenas, 0, sizeof(arena_t *) * narenas_auto);
1452 /* Never create more than MAX_ARENAS arenas regardless of num_cpus.
1453 * Extra arenas use more PSS and are not very useful unless
1461 * Limit the number of arenas to the indexing range of MALLOCX_ARENA().
1470 /* Allocate and initialize arenas. */
1471 arenas = (arena_t **)base_alloc(tsdn, sizeof(arena_t *) *
1473 if (arenas == NULL)