blob: 6e803160405e0d406304a0411f7a1ba3ca79cada [file] [log] [blame]
Jason Evans0a869662013-12-20 15:47:16 -08001#include "test/jemalloc_test.h"
2
3TEST_BEGIN(test_stats_summary)
4{
5 size_t *cactive;
Jason Evans56048ba2015-05-28 15:03:58 -07006 size_t sz, allocated, active, resident, mapped;
Jason Evans0a869662013-12-20 15:47:16 -08007 int expected = config_stats ? 0 : ENOENT;
8
9 sz = sizeof(cactive);
10 assert_d_eq(mallctl("stats.cactive", &cactive, &sz, NULL, 0), expected,
11 "Unexpected mallctl() result");
12
13 sz = sizeof(size_t);
14 assert_d_eq(mallctl("stats.allocated", &allocated, &sz, NULL, 0),
15 expected, "Unexpected mallctl() result");
16 assert_d_eq(mallctl("stats.active", &active, &sz, NULL, 0), expected,
17 "Unexpected mallctl() result");
Jason Evans56048ba2015-05-28 15:03:58 -070018 assert_d_eq(mallctl("stats.resident", &resident, &sz, NULL, 0),
19 expected, "Unexpected mallctl() result");
Jason Evans0a869662013-12-20 15:47:16 -080020 assert_d_eq(mallctl("stats.mapped", &mapped, &sz, NULL, 0), expected,
21 "Unexpected mallctl() result");
22
23 if (config_stats) {
24 assert_zu_le(active, *cactive,
25 "active should be no larger than cactive");
26 assert_zu_le(allocated, active,
27 "allocated should be no larger than active");
Jason Evans56048ba2015-05-28 15:03:58 -070028 assert_zu_lt(active, resident,
29 "active should be less than resident");
30 assert_zu_lt(active, mapped,
31 "active should be less than mapped");
Jason Evans0a869662013-12-20 15:47:16 -080032 }
33}
34TEST_END
35
Jason Evans0a869662013-12-20 15:47:16 -080036TEST_BEGIN(test_stats_huge)
37{
38 void *p;
39 uint64_t epoch;
40 size_t allocated;
Jason Evanse2deab72014-05-15 22:22:27 -070041 uint64_t nmalloc, ndalloc, nrequests;
Jason Evans0a869662013-12-20 15:47:16 -080042 size_t sz;
43 int expected = config_stats ? 0 : ENOENT;
44
Jason Evans676df882015-09-11 20:50:20 -070045 p = mallocx(large_maxclass+1, 0);
Jason Evans0a869662013-12-20 15:47:16 -080046 assert_ptr_not_null(p, "Unexpected mallocx() failure");
47
48 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
49 "Unexpected mallctl() failure");
50
51 sz = sizeof(size_t);
Jason Evanse2deab72014-05-15 22:22:27 -070052 assert_d_eq(mallctl("stats.arenas.0.huge.allocated", &allocated, &sz,
53 NULL, 0), expected, "Unexpected mallctl() result");
Jason Evans0a869662013-12-20 15:47:16 -080054 sz = sizeof(uint64_t);
Jason Evanse2deab72014-05-15 22:22:27 -070055 assert_d_eq(mallctl("stats.arenas.0.huge.nmalloc", &nmalloc, &sz, NULL,
56 0), expected, "Unexpected mallctl() result");
57 assert_d_eq(mallctl("stats.arenas.0.huge.ndalloc", &ndalloc, &sz, NULL,
58 0), expected, "Unexpected mallctl() result");
59 assert_d_eq(mallctl("stats.arenas.0.huge.nrequests", &nrequests, &sz,
60 NULL, 0), expected, "Unexpected mallctl() result");
Jason Evans0a869662013-12-20 15:47:16 -080061
62 if (config_stats) {
63 assert_zu_gt(allocated, 0,
64 "allocated should be greater than zero");
65 assert_u64_ge(nmalloc, ndalloc,
66 "nmalloc should be at least as large as ndalloc");
Jason Evanse2deab72014-05-15 22:22:27 -070067 assert_u64_le(nmalloc, nrequests,
68 "nmalloc should no larger than nrequests");
Jason Evans0a869662013-12-20 15:47:16 -080069 }
70
71 dallocx(p, 0);
72}
73TEST_END
74
75TEST_BEGIN(test_stats_arenas_summary)
76{
77 unsigned arena;
Jason Evans3c4d92e2014-10-12 22:53:59 -070078 void *little, *large, *huge;
Jason Evans0a869662013-12-20 15:47:16 -080079 uint64_t epoch;
80 size_t sz;
81 int expected = config_stats ? 0 : ENOENT;
82 size_t mapped;
83 uint64_t npurge, nmadvise, purged;
84
85 arena = 0;
86 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
87 0, "Unexpected mallctl() failure");
88
Mike Hommey86e2e702014-05-21 18:01:21 +090089 little = mallocx(SMALL_MAXCLASS, 0);
90 assert_ptr_not_null(little, "Unexpected mallocx() failure");
Jason Evans676df882015-09-11 20:50:20 -070091 large = mallocx(large_maxclass, 0);
Jason Evans0a869662013-12-20 15:47:16 -080092 assert_ptr_not_null(large, "Unexpected mallocx() failure");
Jason Evans3c4d92e2014-10-12 22:53:59 -070093 huge = mallocx(chunksize, 0);
94 assert_ptr_not_null(huge, "Unexpected mallocx() failure");
Jason Evans0a869662013-12-20 15:47:16 -080095
Christopher Ferrise4294032016-03-02 14:33:02 -080096 dallocx(little, 0);
97 dallocx(large, 0);
98 dallocx(huge, 0);
99
Jason Evans0a869662013-12-20 15:47:16 -0800100 assert_d_eq(mallctl("arena.0.purge", NULL, NULL, NULL, 0), 0,
101 "Unexpected mallctl() failure");
102
103 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
104 "Unexpected mallctl() failure");
105
106 sz = sizeof(size_t);
107 assert_d_eq(mallctl("stats.arenas.0.mapped", &mapped, &sz, NULL, 0),
108 expected, "Unexepected mallctl() result");
109 sz = sizeof(uint64_t);
110 assert_d_eq(mallctl("stats.arenas.0.npurge", &npurge, &sz, NULL, 0),
111 expected, "Unexepected mallctl() result");
112 assert_d_eq(mallctl("stats.arenas.0.nmadvise", &nmadvise, &sz, NULL, 0),
113 expected, "Unexepected mallctl() result");
114 assert_d_eq(mallctl("stats.arenas.0.purged", &purged, &sz, NULL, 0),
115 expected, "Unexepected mallctl() result");
116
117 if (config_stats) {
Jason Evans7d8fea92014-01-21 14:20:29 -0800118 assert_u64_gt(npurge, 0,
119 "At least one purge should have occurred");
Jason Evans0a869662013-12-20 15:47:16 -0800120 assert_u64_le(nmadvise, purged,
121 "nmadvise should be no greater than purged");
122 }
Jason Evans0a869662013-12-20 15:47:16 -0800123}
124TEST_END
125
Jason Evans7d8fea92014-01-21 14:20:29 -0800126void *
127thd_start(void *arg)
128{
129
130 return (NULL);
131}
132
133static void
134no_lazy_lock(void)
135{
136 thd_t thd;
137
138 thd_create(&thd, thd_start, NULL);
139 thd_join(thd, NULL);
140}
141
Jason Evans0a869662013-12-20 15:47:16 -0800142TEST_BEGIN(test_stats_arenas_small)
143{
144 unsigned arena;
145 void *p;
146 size_t sz, allocated;
147 uint64_t epoch, nmalloc, ndalloc, nrequests;
148 int expected = config_stats ? 0 : ENOENT;
149
Jason Evans7d8fea92014-01-21 14:20:29 -0800150 no_lazy_lock(); /* Lazy locking would dodge tcache testing. */
151
Jason Evans0a869662013-12-20 15:47:16 -0800152 arena = 0;
153 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
154 0, "Unexpected mallctl() failure");
155
156 p = mallocx(SMALL_MAXCLASS, 0);
157 assert_ptr_not_null(p, "Unexpected mallocx() failure");
158
Jason Evans35f1bc42014-01-14 17:49:37 -0800159 assert_d_eq(mallctl("thread.tcache.flush", NULL, NULL, NULL, 0),
160 config_tcache ? 0 : ENOENT, "Unexpected mallctl() result");
161
Jason Evans0a869662013-12-20 15:47:16 -0800162 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
163 "Unexpected mallctl() failure");
164
165 sz = sizeof(size_t);
166 assert_d_eq(mallctl("stats.arenas.0.small.allocated", &allocated, &sz,
167 NULL, 0), expected, "Unexpected mallctl() result");
168 sz = sizeof(uint64_t);
169 assert_d_eq(mallctl("stats.arenas.0.small.nmalloc", &nmalloc, &sz,
170 NULL, 0), expected, "Unexpected mallctl() result");
171 assert_d_eq(mallctl("stats.arenas.0.small.ndalloc", &ndalloc, &sz,
172 NULL, 0), expected, "Unexpected mallctl() result");
173 assert_d_eq(mallctl("stats.arenas.0.small.nrequests", &nrequests, &sz,
174 NULL, 0), expected, "Unexpected mallctl() result");
175
176 if (config_stats) {
177 assert_zu_gt(allocated, 0,
Jason Evans35f1bc42014-01-14 17:49:37 -0800178 "allocated should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800179 assert_u64_gt(nmalloc, 0,
180 "nmalloc should be no greater than zero");
181 assert_u64_ge(nmalloc, ndalloc,
182 "nmalloc should be at least as large as ndalloc");
183 assert_u64_gt(nrequests, 0,
Jason Evans35f1bc42014-01-14 17:49:37 -0800184 "nrequests should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800185 }
186
187 dallocx(p, 0);
188}
189TEST_END
190
191TEST_BEGIN(test_stats_arenas_large)
192{
193 unsigned arena;
194 void *p;
195 size_t sz, allocated;
196 uint64_t epoch, nmalloc, ndalloc, nrequests;
197 int expected = config_stats ? 0 : ENOENT;
198
199 arena = 0;
200 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
201 0, "Unexpected mallctl() failure");
202
Jason Evans676df882015-09-11 20:50:20 -0700203 p = mallocx(large_maxclass, 0);
Jason Evans0a869662013-12-20 15:47:16 -0800204 assert_ptr_not_null(p, "Unexpected mallocx() failure");
205
206 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
207 "Unexpected mallctl() failure");
208
209 sz = sizeof(size_t);
210 assert_d_eq(mallctl("stats.arenas.0.large.allocated", &allocated, &sz,
211 NULL, 0), expected, "Unexpected mallctl() result");
212 sz = sizeof(uint64_t);
213 assert_d_eq(mallctl("stats.arenas.0.large.nmalloc", &nmalloc, &sz,
214 NULL, 0), expected, "Unexpected mallctl() result");
215 assert_d_eq(mallctl("stats.arenas.0.large.ndalloc", &ndalloc, &sz,
216 NULL, 0), expected, "Unexpected mallctl() result");
217 assert_d_eq(mallctl("stats.arenas.0.large.nrequests", &nrequests, &sz,
218 NULL, 0), expected, "Unexpected mallctl() result");
219
220 if (config_stats) {
221 assert_zu_gt(allocated, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800222 "allocated should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800223 assert_zu_gt(nmalloc, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800224 "nmalloc should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800225 assert_zu_ge(nmalloc, ndalloc,
226 "nmalloc should be at least as large as ndalloc");
227 assert_zu_gt(nrequests, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800228 "nrequests should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800229 }
230
231 dallocx(p, 0);
232}
233TEST_END
234
Jason Evans3c4d92e2014-10-12 22:53:59 -0700235TEST_BEGIN(test_stats_arenas_huge)
236{
237 unsigned arena;
238 void *p;
239 size_t sz, allocated;
240 uint64_t epoch, nmalloc, ndalloc;
241 int expected = config_stats ? 0 : ENOENT;
242
243 arena = 0;
244 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
245 0, "Unexpected mallctl() failure");
246
247 p = mallocx(chunksize, 0);
248 assert_ptr_not_null(p, "Unexpected mallocx() failure");
249
250 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
251 "Unexpected mallctl() failure");
252
253 sz = sizeof(size_t);
254 assert_d_eq(mallctl("stats.arenas.0.huge.allocated", &allocated, &sz,
255 NULL, 0), expected, "Unexpected mallctl() result");
256 sz = sizeof(uint64_t);
257 assert_d_eq(mallctl("stats.arenas.0.huge.nmalloc", &nmalloc, &sz,
258 NULL, 0), expected, "Unexpected mallctl() result");
259 assert_d_eq(mallctl("stats.arenas.0.huge.ndalloc", &ndalloc, &sz,
260 NULL, 0), expected, "Unexpected mallctl() result");
261
262 if (config_stats) {
263 assert_zu_gt(allocated, 0,
264 "allocated should be greater than zero");
265 assert_zu_gt(nmalloc, 0,
266 "nmalloc should be greater than zero");
267 assert_zu_ge(nmalloc, ndalloc,
268 "nmalloc should be at least as large as ndalloc");
269 }
270
271 dallocx(p, 0);
272}
273TEST_END
274
Jason Evans0a869662013-12-20 15:47:16 -0800275TEST_BEGIN(test_stats_arenas_bins)
276{
277 unsigned arena;
278 void *p;
Jason Evans3c4d92e2014-10-12 22:53:59 -0700279 size_t sz, curruns, curregs;
Jason Evans0a869662013-12-20 15:47:16 -0800280 uint64_t epoch, nmalloc, ndalloc, nrequests, nfills, nflushes;
Jason Evans2b51a3e2014-01-28 17:22:06 -0800281 uint64_t nruns, nreruns;
Jason Evans0a869662013-12-20 15:47:16 -0800282 int expected = config_stats ? 0 : ENOENT;
283
284 arena = 0;
285 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
286 0, "Unexpected mallctl() failure");
287
288 p = mallocx(arena_bin_info[0].reg_size, 0);
289 assert_ptr_not_null(p, "Unexpected mallocx() failure");
290
291 assert_d_eq(mallctl("thread.tcache.flush", NULL, NULL, NULL, 0),
292 config_tcache ? 0 : ENOENT, "Unexpected mallctl() result");
293
294 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
295 "Unexpected mallctl() failure");
296
Jason Evans0a869662013-12-20 15:47:16 -0800297 sz = sizeof(uint64_t);
298 assert_d_eq(mallctl("stats.arenas.0.bins.0.nmalloc", &nmalloc, &sz,
299 NULL, 0), expected, "Unexpected mallctl() result");
300 assert_d_eq(mallctl("stats.arenas.0.bins.0.ndalloc", &ndalloc, &sz,
301 NULL, 0), expected, "Unexpected mallctl() result");
302 assert_d_eq(mallctl("stats.arenas.0.bins.0.nrequests", &nrequests, &sz,
303 NULL, 0), expected, "Unexpected mallctl() result");
Jason Evans3c4d92e2014-10-12 22:53:59 -0700304 sz = sizeof(size_t);
305 assert_d_eq(mallctl("stats.arenas.0.bins.0.curregs", &curregs, &sz,
306 NULL, 0), expected, "Unexpected mallctl() result");
Jason Evans0a869662013-12-20 15:47:16 -0800307
Yuriy Kaminskiyf79e01f2014-12-02 16:24:11 -0800308 sz = sizeof(uint64_t);
Jason Evans0a869662013-12-20 15:47:16 -0800309 assert_d_eq(mallctl("stats.arenas.0.bins.0.nfills", &nfills, &sz,
310 NULL, 0), config_tcache ? expected : ENOENT,
311 "Unexpected mallctl() result");
312 assert_d_eq(mallctl("stats.arenas.0.bins.0.nflushes", &nflushes, &sz,
313 NULL, 0), config_tcache ? expected : ENOENT,
314 "Unexpected mallctl() result");
315
316 assert_d_eq(mallctl("stats.arenas.0.bins.0.nruns", &nruns, &sz,
317 NULL, 0), expected, "Unexpected mallctl() result");
318 assert_d_eq(mallctl("stats.arenas.0.bins.0.nreruns", &nreruns, &sz,
319 NULL, 0), expected, "Unexpected mallctl() result");
Jason Evans2b51a3e2014-01-28 17:22:06 -0800320 sz = sizeof(size_t);
Jason Evans0a869662013-12-20 15:47:16 -0800321 assert_d_eq(mallctl("stats.arenas.0.bins.0.curruns", &curruns, &sz,
322 NULL, 0), expected, "Unexpected mallctl() result");
323
324 if (config_stats) {
Jason Evans0a869662013-12-20 15:47:16 -0800325 assert_u64_gt(nmalloc, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800326 "nmalloc should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800327 assert_u64_ge(nmalloc, ndalloc,
328 "nmalloc should be at least as large as ndalloc");
329 assert_u64_gt(nrequests, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800330 "nrequests should be greater than zero");
Jason Evans3c4d92e2014-10-12 22:53:59 -0700331 assert_zu_gt(curregs, 0,
332 "allocated should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800333 if (config_tcache) {
334 assert_u64_gt(nfills, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800335 "At least one fill should have occurred");
Jason Evans0a869662013-12-20 15:47:16 -0800336 assert_u64_gt(nflushes, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800337 "At least one flush should have occurred");
Jason Evans0a869662013-12-20 15:47:16 -0800338 }
Jason Evans7d8fea92014-01-21 14:20:29 -0800339 assert_u64_gt(nruns, 0,
340 "At least one run should have been allocated");
Jason Evans2b51a3e2014-01-28 17:22:06 -0800341 assert_zu_gt(curruns, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800342 "At least one run should be currently allocated");
Jason Evans0a869662013-12-20 15:47:16 -0800343 }
344
345 dallocx(p, 0);
346}
347TEST_END
348
349TEST_BEGIN(test_stats_arenas_lruns)
350{
351 unsigned arena;
352 void *p;
Jason Evans2b51a3e2014-01-28 17:22:06 -0800353 uint64_t epoch, nmalloc, ndalloc, nrequests;
354 size_t curruns, sz;
Jason Evans0a869662013-12-20 15:47:16 -0800355 int expected = config_stats ? 0 : ENOENT;
356
357 arena = 0;
358 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
359 0, "Unexpected mallctl() failure");
360
Jason Evans3c4d92e2014-10-12 22:53:59 -0700361 p = mallocx(LARGE_MINCLASS, 0);
Jason Evans0a869662013-12-20 15:47:16 -0800362 assert_ptr_not_null(p, "Unexpected mallocx() failure");
363
364 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
365 "Unexpected mallctl() failure");
366
Jason Evans2b51a3e2014-01-28 17:22:06 -0800367 sz = sizeof(uint64_t);
Jason Evans0a869662013-12-20 15:47:16 -0800368 assert_d_eq(mallctl("stats.arenas.0.lruns.0.nmalloc", &nmalloc, &sz,
369 NULL, 0), expected, "Unexpected mallctl() result");
370 assert_d_eq(mallctl("stats.arenas.0.lruns.0.ndalloc", &ndalloc, &sz,
371 NULL, 0), expected, "Unexpected mallctl() result");
372 assert_d_eq(mallctl("stats.arenas.0.lruns.0.nrequests", &nrequests, &sz,
373 NULL, 0), expected, "Unexpected mallctl() result");
Jason Evans2b51a3e2014-01-28 17:22:06 -0800374 sz = sizeof(size_t);
Jason Evans0a869662013-12-20 15:47:16 -0800375 assert_d_eq(mallctl("stats.arenas.0.lruns.0.curruns", &curruns, &sz,
376 NULL, 0), expected, "Unexpected mallctl() result");
377
378 if (config_stats) {
379 assert_u64_gt(nmalloc, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800380 "nmalloc should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800381 assert_u64_ge(nmalloc, ndalloc,
382 "nmalloc should be at least as large as ndalloc");
383 assert_u64_gt(nrequests, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800384 "nrequests should be greater than zero");
Jason Evans0a869662013-12-20 15:47:16 -0800385 assert_u64_gt(curruns, 0,
Jason Evans7d8fea92014-01-21 14:20:29 -0800386 "At least one run should be currently allocated");
Jason Evans0a869662013-12-20 15:47:16 -0800387 }
388
389 dallocx(p, 0);
390}
391TEST_END
392
Jason Evans3c4d92e2014-10-12 22:53:59 -0700393TEST_BEGIN(test_stats_arenas_hchunks)
394{
395 unsigned arena;
396 void *p;
397 uint64_t epoch, nmalloc, ndalloc;
398 size_t curhchunks, sz;
399 int expected = config_stats ? 0 : ENOENT;
400
401 arena = 0;
402 assert_d_eq(mallctl("thread.arena", NULL, NULL, &arena, sizeof(arena)),
403 0, "Unexpected mallctl() failure");
404
405 p = mallocx(chunksize, 0);
406 assert_ptr_not_null(p, "Unexpected mallocx() failure");
407
408 assert_d_eq(mallctl("epoch", NULL, NULL, &epoch, sizeof(epoch)), 0,
409 "Unexpected mallctl() failure");
410
411 sz = sizeof(uint64_t);
412 assert_d_eq(mallctl("stats.arenas.0.hchunks.0.nmalloc", &nmalloc, &sz,
413 NULL, 0), expected, "Unexpected mallctl() result");
414 assert_d_eq(mallctl("stats.arenas.0.hchunks.0.ndalloc", &ndalloc, &sz,
415 NULL, 0), expected, "Unexpected mallctl() result");
416 sz = sizeof(size_t);
417 assert_d_eq(mallctl("stats.arenas.0.hchunks.0.curhchunks", &curhchunks,
418 &sz, NULL, 0), expected, "Unexpected mallctl() result");
419
420 if (config_stats) {
421 assert_u64_gt(nmalloc, 0,
422 "nmalloc should be greater than zero");
423 assert_u64_ge(nmalloc, ndalloc,
424 "nmalloc should be at least as large as ndalloc");
425 assert_u64_gt(curhchunks, 0,
426 "At least one chunk should be currently allocated");
427 }
428
429 dallocx(p, 0);
430}
431TEST_END
432
Jason Evans0a869662013-12-20 15:47:16 -0800433int
434main(void)
435{
436
437 return (test(
438 test_stats_summary,
Jason Evans0a869662013-12-20 15:47:16 -0800439 test_stats_huge,
440 test_stats_arenas_summary,
441 test_stats_arenas_small,
442 test_stats_arenas_large,
Jason Evans3c4d92e2014-10-12 22:53:59 -0700443 test_stats_arenas_huge,
Jason Evans0a869662013-12-20 15:47:16 -0800444 test_stats_arenas_bins,
Jason Evans3c4d92e2014-10-12 22:53:59 -0700445 test_stats_arenas_lruns,
446 test_stats_arenas_hchunks));
Jason Evans0a869662013-12-20 15:47:16 -0800447}