Loading...
tests/memory_pressure.c libmalloc-715.100.22 libmalloc-792.80.2
--- libmalloc/libmalloc-715.100.22/tests/memory_pressure.c
+++ libmalloc/libmalloc-792.80.2/tests/memory_pressure.c
@@ -48,6 +48,7 @@
 		T_META_ENVVAR("MallocSpaceEfficient=1"),
 		T_META_ENVVAR("MallocMaxMagazines=1"),
 		T_META_TAG_VM_NOT_PREFERRED,
+		T_META_TAG_MAGAZINE_ONLY,
 		T_META_CHECK_LEAKS(false))
 {
 	dispatch_queue_t q = dispatch_queue_create("pressure queue", 0); // serial
@@ -63,6 +64,7 @@
 
 T_DECL(small_mem_pressure, "small memory pressure thread",
 		T_META_TAG_VM_NOT_PREFERRED,
+		T_META_TAG_MAGAZINE_ONLY,
 		T_META_RUN_CONCURRENTLY(true),
 #if TARGET_OS_WATCH
 		T_META_TIMEOUT(TEST_TIMEOUT),
@@ -131,9 +133,11 @@
 T_DECL(xzone_mem_pressure, "xzone memory pressure",
 		T_META_ENVVAR("MallocNanoZone=1"),
 		T_META_ENVVAR("MallocProbGuard=0"),
+#if TARGET_OS_WATCH
+		T_META_ENVVAR(PTR_BUCKET_ENVVAR), // disables narrow bucketing
+#endif
 		T_META_TAG("no_debug"),
-		T_META_TAG_NANO_ON_XZONE,
-		T_META_TAG_XZONE_ONLY)
+		T_META_TAG_XZONE_ONLY, T_META_TAG_VM_NOT_PREFERRED)
 {
 #define XZM_DATA_RANGE_SIZE    GiB(10)
 	xzm_malloc_zone_t zone = get_default_xzone_zone();
@@ -170,7 +174,7 @@
 #endif
 
 #define XZM_POINTER_RANGE_SIZE GiB(8)
-#define NUM_ALLOCS ((XZM_POINTER_RANGE_SIZE / XZM_LARGE_BLOCK_SIZE_MAX) + 1)
+#define NUM_ALLOCS ((XZM_POINTER_RANGE_SIZE / XZM_LARGE_BLOCK_SIZE_MAX) + 20)
 	struct pointer {
 		void *dummy[XZM_LARGE_BLOCK_SIZE_MAX / sizeof(void *)];
 	};
@@ -220,6 +224,7 @@
 		T_META_TIMEOUT(TEST_TIMEOUT),
 #endif // TARGET_OS_WATCH
 		T_META_TAG_VM_NOT_PREFERRED,
+		T_META_TAG_MAGAZINE_ONLY,
 		T_META_CHECK_LEAKS(false)) {
 	dispatch_group_t g = dispatch_group_create();
 	for (int i=0; i<16; i++) {
@@ -242,6 +247,7 @@
 
 T_DECL(small_mem_pressure_multi, "test memory pressure in small on threads",
 		T_META_TAG_VM_NOT_PREFERRED,
+		T_META_TAG_MAGAZINE_ONLY,
 		T_META_RUN_CONCURRENTLY(true),
 #if TARGET_OS_WATCH
 		T_META_TIMEOUT(TEST_TIMEOUT),
@@ -272,6 +278,7 @@
 #endif // TARGET_OS_WATCH
 		T_META_CHECK_LEAKS(false),
 		T_META_TAG_VM_NOT_PREFERRED,
+		T_META_TAG_MAGAZINE_ONLY,
 		T_META_RUN_CONCURRENTLY(true)) {
 	dispatch_group_t g = dispatch_group_create();
 	for (int i=0; i<30; i++) {