Loading...
--- libmalloc/libmalloc-283/src/magazine_malloc.h
+++ libmalloc/libmalloc-646.40.3/src/magazine_malloc.h
@@ -55,8 +55,27 @@
MALLOC_NOEXPORT
extern uint64_t magazine_medium_active_threshold;
+#if CONFIG_MEDIUM_ALLOCATOR
+MALLOC_NOEXPORT
+extern uint64_t magazine_medium_madvise_dram_scale_divisor;
+
+MALLOC_NOEXPORT
+extern uint64_t magazine_medium_madvise_window_scale_factor;
+#endif // CONFIG_MEDIUM_ALLOCATOR
+
+
MALLOC_NOEXPORT
extern uint64_t magazine_large_expanded_cache_threshold;
+
+#if CONFIG_AGGRESSIVE_MADVISE
+MALLOC_NOEXPORT
+extern bool aggressive_madvise_enabled;
+#endif // CONFIG_AGGRESSIVE_MADVISE
+
+#if CONFIG_LARGE_CACHE
+MALLOC_NOEXPORT
+extern bool large_cache_enabled;
+#endif // CONFIG_LARGE_CACHE
// MARK: magazine_malloc utility functions
@@ -141,7 +160,12 @@
MALLOC_NOEXPORT
boolean_t
-tiny_free_no_lock(rack_t *rack, magazine_t *tiny_mag_ptr, mag_index_t mag_index, region_t region, void *ptr, msize_t msize, boolean_t partial_free);
+tiny_check(rack_t *rack, unsigned counter);
+
+MALLOC_NOEXPORT
+boolean_t
+tiny_free_no_lock(rack_t *rack, magazine_t *tiny_mag_ptr, mag_index_t mag_index,
+ region_t region, void *ptr, msize_t msize, uint32_t flags);
MALLOC_NOEXPORT
size_t
@@ -375,8 +399,8 @@
// MARK: large region allocator functions
MALLOC_NOEXPORT
-void
-free_large(szone_t *szone, void *ptr);
+bool
+free_large(szone_t *szone, void *ptr, bool try);
MALLOC_NOEXPORT
void
@@ -407,6 +431,13 @@
boolean_t
large_claimed_address(szone_t *szone, void *ptr);
+#if CONFIG_LARGE_CACHE
+MALLOC_NOEXPORT
+void
+large_destroy_cache(szone_t *szone);
+#endif // CONFIG_LARGE_CACHE
+
+
MALLOC_NOEXPORT
void
large_debug_print(task_t task, unsigned level, vm_address_t zone_address,