malloc: retire mt_stats_zone in favor of pcpu_zone_64

Reviewed by:	markj, imp
Differential Revision:	https://reviews.freebsd.org/D27142
This commit is contained in:
Mateusz Guzik 2020-11-09 22:58:29 +00:00
parent 283c76c7c3
commit 8e6526e966
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=367532
2 changed files with 5 additions and 10 deletions

View File

@ -174,11 +174,6 @@ struct {
{0, NULL},
};
/*
* Zone to allocate per-CPU storage for statistics.
*/
static uma_zone_t mt_stats_zone;
u_long vm_kmem_size;
SYSCTL_ULONG(_vm, OID_AUTO, kmem_size, CTLFLAG_RDTUN, &vm_kmem_size, 0,
"Size of kernel memory");
@ -1184,9 +1179,6 @@ mallocinit(void *dummy)
if (kmem_zmax < PAGE_SIZE || kmem_zmax > KMEM_ZMAX)
kmem_zmax = KMEM_ZMAX;
mt_stats_zone = uma_zcreate("mt_stats_zone",
sizeof(struct malloc_type_stats), NULL, NULL, NULL, NULL,
UMA_ALIGN_PTR, UMA_ZONE_PCPU);
for (i = 0, indx = 0; kmemzones[indx].kz_size != 0; indx++) {
int size = kmemzones[indx].kz_size;
const char *name = kmemzones[indx].kz_name;
@ -1222,7 +1214,7 @@ malloc_init(void *data)
mtp->ks_shortdesc, mtp->ks_version);
mtip = &mtp->ks_mti;
mtip->mti_stats = uma_zalloc_pcpu(mt_stats_zone, M_WAITOK | M_ZERO);
mtip->mti_stats = uma_zalloc_pcpu(pcpu_zone_64, M_WAITOK | M_ZERO);
mtp_set_subzone(mtp);
mtx_lock(&malloc_mtx);
@ -1279,7 +1271,7 @@ malloc_uninit(void *data)
temp_allocs, temp_bytes);
}
uma_zfree_pcpu(mt_stats_zone, mtip->mti_stats);
uma_zfree_pcpu(pcpu_zone_64, mtip->mti_stats);
}
struct malloc_type *

View File

@ -92,6 +92,9 @@ struct malloc_type_stats {
uint64_t _mts_reserved3; /* Reserved field. */
};
_Static_assert(sizeof(struct malloc_type_stats) == 64,
"allocations come from pcpu_zone_64");
/*
* Index definitions for the mti_probes[] array.
*/