diff options
Diffstat (limited to 'standalone/tests/primary_test.cpp')
-rw-r--r-- | standalone/tests/primary_test.cpp | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/standalone/tests/primary_test.cpp b/standalone/tests/primary_test.cpp index e7aa6f795b6..5ec43619a2a 100644 --- a/standalone/tests/primary_test.cpp +++ b/standalone/tests/primary_test.cpp @@ -29,24 +29,40 @@ struct TestConfig1 { static const bool MaySupportMemoryTagging = false; typedef scudo::uptr PrimaryCompactPtrT; static const scudo::uptr PrimaryCompactPtrScale = 0; + static const bool PrimaryEnableRandomOffset = true; + static const scudo::uptr PrimaryMapSizeIncrement = 1UL << 18; }; struct TestConfig2 { +#if defined(__mips__) + // Unable to allocate greater size on QEMU-user. + static const scudo::uptr PrimaryRegionSizeLog = 23U; +#else static const scudo::uptr PrimaryRegionSizeLog = 24U; +#endif static const scudo::s32 PrimaryMinReleaseToOsIntervalMs = INT32_MIN; static const scudo::s32 PrimaryMaxReleaseToOsIntervalMs = INT32_MAX; static const bool MaySupportMemoryTagging = false; typedef scudo::uptr PrimaryCompactPtrT; static const scudo::uptr PrimaryCompactPtrScale = 0; + static const bool PrimaryEnableRandomOffset = true; + static const scudo::uptr PrimaryMapSizeIncrement = 1UL << 18; }; struct TestConfig3 { +#if defined(__mips__) + // Unable to allocate greater size on QEMU-user. + static const scudo::uptr PrimaryRegionSizeLog = 23U; +#else static const scudo::uptr PrimaryRegionSizeLog = 24U; +#endif static const scudo::s32 PrimaryMinReleaseToOsIntervalMs = INT32_MIN; static const scudo::s32 PrimaryMaxReleaseToOsIntervalMs = INT32_MAX; static const bool MaySupportMemoryTagging = true; typedef scudo::uptr PrimaryCompactPtrT; static const scudo::uptr PrimaryCompactPtrScale = 0; + static const bool PrimaryEnableRandomOffset = true; + static const scudo::uptr PrimaryMapSizeIncrement = 1UL << 18; }; template <typename BaseConfig, typename SizeClassMapT> @@ -122,7 +138,7 @@ SCUDO_TYPED_TEST(ScudoPrimaryTest, BasicPrimary) { } Cache.destroy(nullptr); Allocator->releaseToOS(); - scudo::ScopedString Str(1024); + scudo::ScopedString Str; Allocator->getStats(&Str); Str.output(); } @@ -135,6 +151,8 @@ struct SmallRegionsConfig { static const bool MaySupportMemoryTagging = false; typedef scudo::uptr PrimaryCompactPtrT; static const scudo::uptr PrimaryCompactPtrScale = 0; + static const bool PrimaryEnableRandomOffset = true; + static const scudo::uptr PrimaryMapSizeIncrement = 1UL << 18; }; // The 64-bit SizeClassAllocator can be easily OOM'd with small region sizes. @@ -168,7 +186,7 @@ TEST(ScudoPrimaryTest, Primary64OOM) { } Cache.destroy(nullptr); Allocator.releaseToOS(); - scudo::ScopedString Str(1024); + scudo::ScopedString Str; Allocator.getStats(&Str); Str.output(); EXPECT_EQ(AllocationFailed, true); @@ -206,7 +224,7 @@ SCUDO_TYPED_TEST(ScudoPrimaryTest, PrimaryIterate) { } Cache.destroy(nullptr); Allocator->releaseToOS(); - scudo::ScopedString Str(1024); + scudo::ScopedString Str; Allocator->getStats(&Str); Str.output(); } @@ -253,7 +271,7 @@ SCUDO_TYPED_TEST(ScudoPrimaryTest, PrimaryThreaded) { for (auto &T : Threads) T.join(); Allocator->releaseToOS(); - scudo::ScopedString Str(1024); + scudo::ScopedString Str; Allocator->getStats(&Str); Str.output(); } |