Loading...
--- libmalloc/libmalloc-166.251.2/src/magazine_malloc.h
+++ libmalloc/libmalloc-374.100.5/src/magazine_malloc.h
@@ -34,6 +34,8 @@
szone_t *
create_scalable_szone(size_t initial_size, unsigned debug_flags);
+// Allegedly exported for performance/debugging tools
+
MALLOC_EXPORT
boolean_t
scalable_zone_statistics(malloc_zone_t *zone, malloc_statistics_t *stats, unsigned subzone);
@@ -52,6 +54,28 @@
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
@@ -136,7 +160,7 @@
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);
+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);
MALLOC_NOEXPORT
size_t
@@ -177,7 +201,8 @@
MALLOC_NOEXPORT
void
-free_tiny(rack_t *rack, void *ptr, region_t tiny_region, size_t known_size);
+free_tiny(rack_t *rack, void *ptr, region_t tiny_region, size_t known_size,
+ boolean_t partial_free);
MALLOC_NOEXPORT
size_t
@@ -193,11 +218,14 @@
MALLOC_NOEXPORT
void
-print_tiny_free_list(rack_t *rack);
-
-MALLOC_NOEXPORT
-void
-print_tiny_region(boolean_t verbose, region_t region, size_t bytes_at_start, size_t bytes_at_end);
+print_tiny_free_list(task_t task, memory_reader_t reader,
+ print_task_printer_t printer, rack_t *rack);
+
+MALLOC_NOEXPORT
+void
+print_tiny_region(task_t task, memory_reader_t reader,
+ print_task_printer_t printer, int level, region_t region,
+ size_t bytes_at_start, size_t bytes_at_end);
#if CONFIG_MADVISE_PRESSURE_RELIEF
MALLOC_NOEXPORT
@@ -267,11 +295,14 @@
MALLOC_NOEXPORT
void
-print_small_free_list(rack_t *rack);
-
-MALLOC_NOEXPORT
-void
-print_small_region(szone_t *szone, boolean_t verbose, region_t region, size_t bytes_at_start, size_t bytes_at_end);
+print_small_free_list(task_t task, memory_reader_t reader,
+ print_task_printer_t printer, rack_t *rack);
+
+MALLOC_NOEXPORT
+void
+print_small_region(task_t task, memory_reader_t reader,
+ print_task_printer_t printer, szone_t *szone, int level,
+ region_t region, size_t bytes_at_start, size_t bytes_at_end);
#if CONFIG_MADVISE_PRESSURE_RELIEF
MALLOC_NOEXPORT
@@ -341,11 +372,14 @@
MALLOC_NOEXPORT
void
-print_medium_free_list(rack_t *rack);
-
-MALLOC_NOEXPORT
-void
-print_medium_region(szone_t *szone, boolean_t verbose, region_t region, size_t bytes_at_start, size_t bytes_at_end);
+print_medium_free_list(task_t task, memory_reader_t reader,
+ print_task_printer_t printer, rack_t *rack);
+
+MALLOC_NOEXPORT
+void
+print_medium_region(task_t task, memory_reader_t reader,
+ print_task_printer_t printer, szone_t *szone, int level,
+ region_t region, size_t bytes_at_start, size_t bytes_at_end);
MALLOC_NOEXPORT
void
@@ -393,24 +427,12 @@
large_claimed_address(szone_t *szone, void *ptr);
MALLOC_NOEXPORT
+void
+large_debug_print(task_t task, unsigned level, vm_address_t zone_address,
+ memory_reader_t reader, print_task_printer_t printer);
+
+MALLOC_NOEXPORT
void *
szone_malloc_should_clear(szone_t *szone, size_t size, boolean_t cleared_requested);
-// MARK: stack logging lite functionality
-
-#define MALLOC_STOCK_LOGGING_LITE_ZONE_NAME "MallocStackLoggingLiteZone"
-
-// These enable/disable stack logging lite for malloc allocations, not VM-only lite mode
-MALLOC_NOEXPORT
-void
-enable_stack_logging_lite();
-
-MALLOC_NOEXPORT
-void
-disable_stack_logging_lite();
-
-MALLOC_NOEXPORT
-malloc_zone_t *
-create_stack_logging_lite_zone(size_t initial_size, malloc_zone_t *helper_zone, unsigned debug_flags);
-
#endif // __MAGAZINE_MALLOC_H