diff options
author | mfomitchev <mfomitchev@chromium.org> | 2015-04-02 08:17:10 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-02 15:17:40 +0000 |
commit | c694b85959b12a1a81785e5fe7a88f3b998f89d0 (patch) | |
tree | 9d763083ca196c5b50ced825e85415d318af81f0 /base | |
parent | 0b2cdd646a2e72c3df158b27974dc9647926d340 (diff) | |
download | chromium_src-c694b85959b12a1a81785e5fe7a88f3b998f89d0.zip chromium_src-c694b85959b12a1a81785e5fe7a88f3b998f89d0.tar.gz chromium_src-c694b85959b12a1a81785e5fe7a88f3b998f89d0.tar.bz2 |
Revert of Fix OutOfMemoryDeathTest.ViaSharedLibraries. (patchset #10 id:180001 of https://codereview.chromium.org/878473002/)
Reason for revert:
Looks like this broke iOS_Device bot:
=== BUILD TARGET malloc_wrapper OF PROJECT base WITH CONFIGURATION Release ===
Check dependencies
CodeSign error: code signing is required for product type 'Dynamic Library' in SDK 'iOS 8.1'
https://build.chromium.org/p/chromium.mac/builders/iOS_Device/builds/1689/steps/compile/logs/stdio
Original issue's description:
> Fix OutOfMemoryDeathTest.ViaSharedLibraries.
>
> This test was invalid on modern glibc:
> asprintf errors EOVERFLOW without attempting an allocation
> when the size is at least INT_MAX - 32. INT_MAX - 33 is the
> largest size that can attempt to trigger allocation failure,
> and will not necessarily accomplish that on some systems.
>
> Create a library that is specified to wrap malloc trivially,
> to accomplish the goal of the test without external dependencies
> or inconsistently implemented behavior.
>
> BUG=428211
>
> Committed: https://crrev.com/82cb6b003c8e20e4a8386bf8698980bb4981d434
> Cr-Commit-Position: refs/heads/master@{#323197}
TBR=gunsch@chromium.org,shess@chromium.org,mark@chromium.org,danakj@chromium.org,icoolidge@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=428211
Review URL: https://codereview.chromium.org/1050423002
Cr-Commit-Position: refs/heads/master@{#323491}
Diffstat (limited to 'base')
-rw-r--r-- | base/BUILD.gn | 2 | ||||
-rw-r--r-- | base/base.gyp | 26 | ||||
-rw-r--r-- | base/base_unittests.isolate | 7 | ||||
-rw-r--r-- | base/process/memory_unittest.cc | 11 | ||||
-rw-r--r-- | base/test/BUILD.gn | 10 | ||||
-rw-r--r-- | base/test/malloc_wrapper.cc | 11 | ||||
-rw-r--r-- | base/test/malloc_wrapper.h | 21 |
7 files changed, 11 insertions, 77 deletions
diff --git a/base/BUILD.gn b/base/BUILD.gn index df06d24..290ca8a 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn @@ -1348,8 +1348,6 @@ test("base_unittests") { if (is_linux) { sources -= [ "file_version_info_unittest.cc" ] sources += [ "nix/xdg_util_unittest.cc" ] - deps += [ "//base/test:malloc_wrapper" ] - if (use_glib) { configs += [ "//build/config/linux:glib" ] } diff --git a/base/base.gyp b/base/base.gyp index 127f7a5..5fafb4b 100644 --- a/base/base.gyp +++ b/base/base.gyp @@ -447,16 +447,6 @@ ], }, { - 'target_name': 'malloc_wrapper', - 'type': 'shared_library', - 'dependencies': [ - 'base', - ], - 'sources': [ - 'test/malloc_wrapper.cc', - ], - }, - { 'target_name': 'base_unittests', 'type': '<(gtest_target_type)', 'sources': [ @@ -768,17 +758,11 @@ 'message_loop/message_pump_glib_unittest.cc', ] }], - ['OS == "linux"', { - 'dependencies': [ - 'malloc_wrapper', - ], - 'conditions': [ - ['use_allocator!="none"', { - 'dependencies': [ - 'allocator/allocator.gyp:allocator', - ], - }], - ]}, + ['OS == "linux" and use_allocator!="none"', { + 'dependencies': [ + 'allocator/allocator.gyp:allocator', + ], + }, ], ['OS == "win"', { 'sources!': [ diff --git a/base/base_unittests.isolate b/base/base_unittests.isolate index b1c270c..e329152 100644 --- a/base/base_unittests.isolate +++ b/base/base_unittests.isolate @@ -50,13 +50,6 @@ 'read_only': 1, }, }], - ['OS=="linux"', { - 'variables': { - 'files': [ - '<(PRODUCT_DIR)/lib/libmalloc_wrapper.so', - ], - }, - }], ['OS=="mac" and asan==1 and fastbuild==0', { 'variables': { 'files': [ diff --git a/base/process/memory_unittest.cc b/base/process/memory_unittest.cc index 2e64fd7..50ba098 100644 --- a/base/process/memory_unittest.cc +++ b/base/process/memory_unittest.cc @@ -26,7 +26,6 @@ #endif #if defined(OS_LINUX) #include <malloc.h> -#include "base/test/malloc_wrapper.h" #endif #if defined(OS_WIN) @@ -235,11 +234,13 @@ TEST_F(OutOfMemoryDeathTest, Memalign) { TEST_F(OutOfMemoryDeathTest, ViaSharedLibraries) { // This tests that the run-time symbol resolution is overriding malloc for - // shared libraries as well as for our code. + // shared libraries (including libc itself) as well as for our code. + std::string format = base::StringPrintf("%%%zud", test_size_); + char *value = NULL; ASSERT_DEATH({ - SetUpInDeathAssert(); - value_ = MallocWrapper(test_size_); - }, ""); + SetUpInDeathAssert(); + EXPECT_EQ(-1, asprintf(&value, format.c_str(), 0)); + }, ""); } #endif // OS_LINUX diff --git a/base/test/BUILD.gn b/base/test/BUILD.gn index b94a4c7..c4356cb 100644 --- a/base/test/BUILD.gn +++ b/base/test/BUILD.gn @@ -183,16 +183,6 @@ source_set("run_all_unittests") { ] } -shared_library("malloc_wrapper") { - testonly = true - sources = [ - "malloc_wrapper.cc", - ] - deps = [ - "//base", - ] -} - if (is_android) { generate_jni("base_unittests_jni_headers") { sources = [ diff --git a/base/test/malloc_wrapper.cc b/base/test/malloc_wrapper.cc deleted file mode 100644 index eb280a3..0000000 --- a/base/test/malloc_wrapper.cc +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "malloc_wrapper.h" - -#include <stdlib.h> - -void* MallocWrapper(size_t size) { - return malloc(size); -} diff --git a/base/test/malloc_wrapper.h b/base/test/malloc_wrapper.h deleted file mode 100644 index 0fa7dbb..0000000 --- a/base/test/malloc_wrapper.h +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef BASE_TEST_MALLOC_WRAPPER_H_ -#define BASE_TEST_MALLOC_WRAPPER_H_ - -#include "base/basictypes.h" - -// BASE_EXPORT depends on COMPONENT_BUILD. -// This will always be a separate shared library, so don't use BASE_EXPORT here. -#if defined(WIN32) -#define MALLOC_WRAPPER_EXPORT __declspec(dllexport) -#else -#define MALLOC_WRAPPER_EXPORT __attribute__((visibility("default"))) -#endif // defined(WIN32) - -// Calls malloc directly. -MALLOC_WRAPPER_EXPORT void* MallocWrapper(size_t size); - -#endif // BASE_TEST_MALLOC_WRAPPER_H_ |