Loading...
tests/malloc_size_test.c libmalloc-792.41.1 libmalloc-521.120.7
--- libmalloc/libmalloc-792.41.1/tests/malloc_size_test.c
+++ libmalloc/libmalloc-521.120.7/tests/malloc_size_test.c
@@ -38,8 +38,7 @@
 }
 
 T_DECL(malloc_size_valid, "Test malloc_size() on valid pointers, non-Nano",
-	   T_META_ENVVAR("MallocNanoZone=0"), T_META_TAG_ALL_ALLOCATORS,
-	   T_META_TAG_VM_PREFERRED)
+	   T_META_ENVVAR("MallocNanoZone=0"), T_META_TAG_XZONE)
 {
 	// Test various sizes, roughly targetting each allocator range.
 	test_malloc_size_valid(2, 256, 16);
@@ -48,15 +47,13 @@
 }
 
 T_DECL(malloc_size_valid_nanov2, "Test malloc_size() on valid pointers for Nanov2",
-	   T_META_ENVVAR("MallocNanoZone=V2"), T_META_TAG_ALL_ALLOCATORS,
-	   T_META_TAG_VM_PREFERRED)
+	   T_META_ENVVAR("MallocNanoZone=V2"), T_META_TAG_XZONE)
 {
 	test_malloc_size_valid(2, 256, 16);
 }
 
 T_DECL(malloc_size_invalid, "Test malloc_size() on invalid pointers, non-Nano",
-	   T_META_ENVVAR("MallocNanoZone=0"), T_META_TAG_VM_PREFERRED,
-	   T_META_TAG_ALL_ALLOCATORS)
+	   T_META_ENVVAR("MallocNanoZone=0"))
 {
 	// Test various sizes, roughly targetting each allocator range.
 	test_malloc_size_invalid(2, 256, 16);
@@ -65,19 +62,14 @@
 }
 
 T_DECL(malloc_size_invalid_nanov2, "Test malloc_size() on valid pointers for Nanov2",
-	   T_META_ENVVAR("MallocNanoZone=V2"), T_META_TAG_VM_PREFERRED,
-	   T_META_TAG_ALL_ALLOCATORS)
+	   T_META_ENVVAR("MallocNanoZone=V2"))
 {
 	test_malloc_size_invalid(2, 256, 16);
 }
 
-// Exclaves doesn't support calling malloc_size() on freed pointers,
-// specifically tiny ones, since the pages containing the inline freelist may
-// have been depopulated
-#if !MALLOC_TARGET_EXCLAVES
 T_DECL(malloc_size_invalid_xzone,
 		"Test malloc_size() on invalid pointers for xzone",
-		T_META_TAG_XZONE_ONLY, T_META_TAG_VM_PREFERRED)
+		T_META_TAG_XZONE_ONLY)
 {
 	// Exhaust early budget
 	void *ptr = NULL;
@@ -128,34 +120,33 @@
 	}
 	free(ptr2);
 }
-#endif // !MALLOC_TARGET_EXCLAVES
 
 #if TARGET_OS_OSX
 T_DECL(malloc_size_large_allocation, "Test malloc_size() on buffers > 4GB",
-		T_META_TAG_ALL_ALLOCATORS, T_META_TAG_VM_PREFERRED)
+		T_META_TAG_XZONE)
 {
 	void *ptr = malloc(GiB(4));
 	T_ASSERT_NOTNULL(ptr, "4GB allocation");
-	T_ASSERT_GE(malloc_size(ptr), (size_t)GiB(4), "size of 4GB allocation");
+	T_ASSERT_GE(malloc_size(ptr), GiB(4), "size of 4GB allocation");
 	free(ptr);
 
 	ptr = malloc(GiB(6));
 	T_ASSERT_NOTNULL(ptr, "6GB allocation");
-	T_ASSERT_GE(malloc_size(ptr), (size_t)GiB(6), "size of 6GB allocation");
+	T_ASSERT_GE(malloc_size(ptr), GiB(6), "size of 6GB allocation");
 	free(ptr);
 }
 #endif // TARGET_OS_OSX
 
 T_DECL(malloc_size_multi_segment,
 		"Make a multi-segment allocation, and pass inner pointers to malloc_size",
-		T_META_TAG_XZONE_ONLY, T_META_TAG_VM_PREFERRED)
+		T_META_TAG_XZONE_ONLY)
 {
 	void *ptr = malloc(MiB(12));
 	T_ASSERT_NOTNULL(ptr, "HUGE allocation");
-	T_ASSERT_LE((size_t)MiB(12), malloc_size(ptr), "Allocated sufficient size");
-	T_ASSERT_EQ((size_t)0, malloc_size((void*)((uintptr_t)ptr + KiB(8))),
+	T_ASSERT_LE(MiB(12), malloc_size(ptr), "Allocated sufficient size");
+	T_ASSERT_EQ(0, malloc_size((void*)((uintptr_t)ptr + KiB(8))),
 			"malloc_size is 0 for inner huge pointer in first segment granule");
-	T_ASSERT_EQ((size_t)0, malloc_size((void*)((uintptr_t)ptr + MiB(8))),
+	T_ASSERT_EQ(0, malloc_size((void*)((uintptr_t)ptr + MiB(8))),
 			"malloc_size is 0 for inner huge pointer in last segment granule");
 
 	free(ptr);
@@ -164,7 +155,7 @@
 #if TARGET_OS_OSX
 T_DECL(malloc_size_outside_embedded_space,
 		"Make enough allocations to push address space beyond 64GB",
-		T_META_TAG_XZONE_ONLY, T_META_TAG_VM_PREFERRED)
+		T_META_TAG_XZONE_ONLY)
 {
 	// Make 32 2GB allocations (don't fault them to avoid dirty memory) to
 	// exhaust the embedded/low segment table address space
@@ -179,24 +170,15 @@
 	// The next allocation should always be above the 64GB mark
 	void *high_ptr = malloc(size);
 	T_ASSERT_NOTNULL(high_ptr, "Allocation outside embedded address space");
-	T_ASSERT_LE((uintptr_t)GiB(64), (uintptr_t)high_ptr, "Allocated pointer above 64GB");
+	T_ASSERT_LE(GiB(64), (uintptr_t)high_ptr, "Allocated pointer above 64GB");
 	T_ASSERT_LE(size, malloc_size(high_ptr),
 			"Size of pointer outside embedded address space");
 
 	free(high_ptr);
-	T_ASSERT_EQ(0ul, malloc_size(high_ptr), "Size is zero after freeing");
+	T_ASSERT_EQ(0, malloc_size(high_ptr), "Size is zero after freeing");
 
 	for (int i = 0; i < num_pointers; i++) {
 		free(ptrs[i]);
 	}
 }
 #endif // TARGET_OS_OSX
-
-T_DECL(malloc_size_max_good_size, "Check malloc_good_size(SIZE_MAX)",
-		T_META_TAG_ALL_ALLOCATORS, T_META_TAG_VM_PREFERRED,
-		T_META_ENVVAR("MallocNanoZone=1"))
-{
-	size_t request_size = SIZE_MAX - 5;
-	size_t good_size = malloc_good_size(request_size);
-	T_ASSERT_GE(good_size, request_size, "good_size valid for request");
-}