Index: lib/msan/msan_allocator.cc =================================================================== --- lib/msan/msan_allocator.cc +++ lib/msan/msan_allocator.cc @@ -255,10 +255,6 @@ void *msan_pvalloc(uptr size, StackTrace *stack) { uptr PageSize = GetPageSizeCached(); - if (UNLIKELY(CheckForPvallocOverflow(size, PageSize))) { - errno = errno_ENOMEM; - return Allocator::FailureHandler::OnBadRequest(); - } // pvalloc(0) should allocate one page. size = size ? RoundUpTo(size, PageSize) : PageSize; return SetErrnoOnNull(MsanAllocate(stack, size, PageSize, false)); Index: lib/msan/tests/msan_test.cc =================================================================== --- lib/msan/tests/msan_test.cc +++ lib/msan/tests/msan_test.cc @@ -3449,17 +3449,6 @@ EXPECT_EQ(0U, (uintptr_t)p % PageSize); EXPECT_EQ(PageSize, __sanitizer_get_allocated_size(p)); free(p); - - // Overflows in pvalloc should be caught. - errno = 0; - p = pvalloc((uintptr_t)-PageSize); - EXPECT_EQ(p, nullptr); - EXPECT_EQ(errno, ENOMEM); - - errno = 0; - p = pvalloc((uintptr_t)-1); - EXPECT_EQ(p, nullptr); - EXPECT_EQ(errno, ENOMEM); } #endif