|
8 | 8 | */
|
9 | 9 |
|
10 | 10 | #include "provider_tracking.h"
|
| 11 | +#include "base_alloc_global.h" |
11 | 12 | #include "critnib.h"
|
12 | 13 | #include "utils_concurrency.h"
|
13 | 14 |
|
@@ -325,11 +326,9 @@ static umf_result_t trackingFree(void *hProvider, void *ptr, size_t size) {
|
325 | 326 | }
|
326 | 327 |
|
327 | 328 | static umf_result_t trackingInitialize(void *params, void **ret) {
|
328 |
| - umf_tracking_memory_provider_t *p = |
329 |
| - (umf_tracking_memory_provider_t *)params; |
330 | 329 | umf_tracking_memory_provider_t *provider =
|
331 |
| - (umf_tracking_memory_provider_t *)umf_ba_linear_alloc( |
332 |
| - p->hTracker->pool_linear, sizeof(umf_tracking_memory_provider_t)); |
| 330 | + (umf_tracking_memory_provider_t *)umf_ba_global_alloc( |
| 331 | + sizeof(umf_tracking_memory_provider_t)); |
333 | 332 | if (!provider) {
|
334 | 333 | return UMF_RESULT_ERROR_OUT_OF_HOST_MEMORY;
|
335 | 334 | }
|
@@ -381,10 +380,7 @@ static void trackingFinalize(void *provider) {
|
381 | 380 | check_if_tracker_is_empty(p->hTracker, p->pool);
|
382 | 381 | #endif /* NDEBUG */
|
383 | 382 |
|
384 |
| - (void)provider; // unused in Release build |
385 |
| - // provider was allocated from the linear allocator, |
386 |
| - // so it will be freed, when the linear allocator is destroyed |
387 |
| - // in umfMemoryTrackerDestroy() |
| 383 | + umf_ba_global_free(provider, sizeof(umf_tracking_memory_provider_t)); |
388 | 384 | }
|
389 | 385 |
|
390 | 386 | static void trackingGetLastError(void *provider, const char **msg,
|
|
0 commit comments