[NFC][scudo] Avoid integer overflow in test
authorVitaly Buka <vitalybuka@google.com>
Thu, 3 Jun 2021 07:06:45 +0000 (00:06 -0700)
committerVitaly Buka <vitalybuka@google.com>
Thu, 3 Jun 2021 07:08:41 +0000 (00:08 -0700)
releasePagesToOS may shrink RSS below the value stored on start.

compiler-rt/lib/scudo/standalone/tests/common_test.cpp

index d8184a7..711e3b2 100644 (file)
@@ -37,16 +37,16 @@ TEST(ScudoCommonTest, SKIP_ON_FUCHSIA(ResidentMemorySize)) {
   MapPlatformData Data = {};
   void *P = map(nullptr, Size, "ResidentMemorySize", 0, &Data);
   ASSERT_NE(nullptr, P);
-  EXPECT_LT(getResidentMemorySize() - OnStart, Threshold);
+  EXPECT_LT(getResidentMemorySize(), OnStart + Threshold);
 
   memset(P, 1, Size);
-  EXPECT_GT(getResidentMemorySize() - OnStart, Size - Threshold);
+  EXPECT_GT(getResidentMemorySize(), OnStart + Size - Threshold);
 
   releasePagesToOS((uptr)P, 0, Size, &Data);
-  EXPECT_LT(getResidentMemorySize() - OnStart, Threshold);
+  EXPECT_LT(getResidentMemorySize(), OnStart + Threshold);
 
   memset(P, 1, Size);
-  EXPECT_GT(getResidentMemorySize() - OnStart, Size - Threshold);
+  EXPECT_GT(getResidentMemorySize(), OnStart + Size - Threshold);
 
   unmap(P, Size, 0, &Data);
 }