Loading...
--- libmalloc/libmalloc-792.1.1/tests/malloc_claimed_address_tests.c
+++ libmalloc/libmalloc-474.0.13/tests/malloc_claimed_address_tests.c
@@ -8,25 +8,17 @@
#include <darwintest.h>
#include <stdlib.h>
#include <stdio.h>
+#include <mach/mach.h>
+#include <mach/mach_vm.h>
#include <malloc/malloc.h>
#include <malloc_private.h>
#include <sys/mman.h>
-#include "base.h"
-
-#if !MALLOC_TARGET_EXCLAVES
-#include <mach/mach.h>
-#include <mach/mach_vm.h>
-#endif // !MALLOC_TARGET_EXCLAVES
T_GLOBAL_META(T_META_RUN_CONCURRENTLY(true));
T_DECL(malloc_claimed_address_default_zone_test,
"Tests for malloc_claimed_address, default zone only",
-#if TARGET_OS_IPHONE
- T_META_TAG_XZONE,
-#endif // TARGET_OS_IPHONE
- T_META_ENVVAR("MallocNanoZone=0"),
- T_META_TAG_VM_NOT_PREFERRED)
+ T_META_ENVVAR("MallocNanoZone=0"))
{
// NULL is never a possible pointer.
boolean_t result = malloc_claimed_address(NULL);
@@ -62,7 +54,6 @@
T_EXPECT_TRUE(result, "allocation from large with offset");
free(ptr);
-#if !MALLOC_TARGET_EXCLAVES
// Allocate some memory with vm_allocate() and make sure it's not claimed.
mach_vm_address_t addr;
kern_return_t kr = mach_vm_allocate(mach_task_self(), &addr, 1024, VM_FLAGS_ANYWHERE);
@@ -70,17 +61,12 @@
result = malloc_claimed_address((void *)addr);
T_EXPECT_FALSE(result, "address in VM allocated memory");
mach_vm_deallocate(mach_task_self(), addr, 1024);
-#endif // !MALLOC_TARGET_EXCLAVES
-}
-
-
-#if !MALLOC_TARGET_EXCLAVES
-// Don't test on xzones because non-default xzones can claim allocations
-// from the main zone
+}
+
+
T_DECL(malloc_zone_claimed_address_test,
"Tests for malloc_zone_claimed_address",
- T_META_ENVVAR("MallocNanoZone=0"),
- T_META_TAG_VM_NOT_PREFERRED)
+ T_META_ENVVAR("MallocNanoZone=0"))
{
malloc_zone_t *zone = malloc_create_zone(0, 0);
@@ -152,16 +138,10 @@
malloc_destroy_zone(zone);
}
-#endif // !MALLOC_TARGET_EXCLAVES
-
-#if !MALLOC_TARGET_EXCLAVES
+
T_DECL(malloc_claimed_address_zone_test,
"Tests for malloc_claimed_address with another zone",
-#if TARGET_OS_IPHONE
- T_META_TAG_XZONE,
-#endif // TARGET_OS_IPHONE
- T_META_ENVVAR("MallocNanoZone=0"),
- T_META_TAG_VM_NOT_PREFERRED)
+ T_META_ENVVAR("MallocNanoZone=0"))
{
// Allocate in a custom zone, check that we can still use
// malloc_claimed_address() to check whether an address is claimed.
@@ -199,12 +179,10 @@
malloc_destroy_zone(zone);
}
-#endif // !MALLOC_TARGET_EXCLAVES
T_DECL(malloc_claimed_address_nanozone_test,
"Tests for malloc_claimed_address with nano",
- T_META_ENVVAR("MallocNanoZone=1"),
- T_META_TAG_VM_NOT_PREFERRED)
+ T_META_ENVVAR("MallocNanoZone=1"))
{
// NULL is never a possible pointer.
boolean_t result = malloc_claimed_address(NULL);
@@ -231,7 +209,6 @@
T_EXPECT_TRUE(result, "Above nano pointer check via default zone");
free(ptr);
-#if !MALLOC_TARGET_EXCLAVES
// Allocate some memory with vm_allocate() and make sure it's not claimed.
mach_vm_address_t addr;
kern_return_t kr = mach_vm_allocate(mach_task_self(), &addr, 1024, VM_FLAGS_ANYWHERE);
@@ -239,15 +216,12 @@
result = malloc_claimed_address((void *)addr);
T_EXPECT_FALSE(result, "address in VM allocated memory");
mach_vm_deallocate(mach_task_self(), addr, 1024);
-#endif // !MALLOC_TARGET_EXCLAVES
-}
-
-#if !MALLOC_TARGET_EXCLAVES
-// Don't run this test on xzone malloc, since the test assumes that it's safe
-// to mprotect the zone returned by malloc_create_zone
+}
+
+
T_DECL(malloc_claimed_address_custom_zone_test,
"Tests for malloc_claimed_address in a zone that does not implement it",
- T_META_ENVVAR("MallocNanoZone=0"), T_META_TAG_VM_PREFERRED)
+ T_META_ENVVAR("MallocNanoZone=0"))
{
// Custom zones that do not support claimed_address must always appear
// to return true.
@@ -293,17 +267,4 @@
malloc_destroy_zone(zone);
}
-#endif // !MALLOC_TARGET_EXCLAVES
-
-T_DECL(malloc_claimed_address_xzone_test,
- "Specific xzone malloc tests for malloc_claimed_address",
- T_META_TAG_XZONE_ONLY)
-{
- // Allocate a HUGE buffer, and then check that both the start and end of it
- // are claimed by malloc
- void *ptr = malloc(MiB(6));
- T_EXPECT_TRUE(malloc_claimed_address(ptr), "start of HUGE allocation");
- T_EXPECT_TRUE(malloc_claimed_address(ptr + MiB(6) - 1),
- "end of HUGE allocation");
- free(ptr);
-}
+