Loading...
tests/memory_pressure.c libmalloc-374.60.3 libmalloc-521.120.7
--- libmalloc/libmalloc-374.60.3/tests/memory_pressure.c
+++ libmalloc/libmalloc-521.120.7/tests/memory_pressure.c
@@ -23,6 +23,7 @@
 	for (int t=0; t<100; t++) {
 		for (int i=0; i<cnt; i++) {
 			struct entry *p = calloc(1, sz);
+			T_QUIET; T_ASSERT_NOTNULL(p, "Failed to make allocation with size %zu", sz);
 			TAILQ_INSERT_TAIL(&head, p, next);
 		}
 		int i=0;
@@ -60,7 +61,16 @@
 #if TARGET_OS_WATCH
 		T_META_TIMEOUT(TEST_TIMEOUT),
 #endif // TARGET_OS_WATCH
+#if TARGET_OS_OSX
+		T_META_ALL_VALID_ARCHS(true), // test Rosetta
+		// darwintest multi-arch support relies on the first line of stderr
+		// being reserved for arch(1) complaining about a given slice being
+		// unsupported, so we can only put the malloc debug reporting on stderr
+		// when we don't need that
+		T_META_ENVVAR("MallocDebugReport=none"),
+#else // TARGET_OS_OSX
 		T_META_ENVVAR("MallocDebugReport=stderr"),
+#endif // TARGET_OS_OSX
 		T_META_ENVVAR("MallocScribble=1"),
 		T_META_ENVVAR("MallocSpaceEfficient=1"),
 		T_META_ENVVAR("MallocMaxMagazines=1"),
@@ -76,6 +86,12 @@
 	stress(512, 20000);
 	T_PASS("didn't crash");
 }
+
+// Disabled until rdar://83904507 is fixed
+//
+// Need to compile the test out entirely because T_META_MAYFAIL doesn't handle
+// test crashes - rdar://86164532
+#if 0
 
 T_DECL(medium_mem_pressure, "medium memory pressure thread",
 #if TARGET_OS_WATCH
@@ -98,6 +114,8 @@
 	stress(64*1024, 1000);
 	T_PASS("didn't crash");
 }
+
+#endif
 
 T_DECL(tiny_mem_pressure_multi, "test memory pressure in tiny on threads",
 #if TARGET_OS_WATCH