New issue
Advanced search Search tips

Issue 897180 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 1
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug
Build-Toolchain



Sign in to add a comment

memory leaks detected in chromeos-config-tools

Project Member Reported by manojgupta@chromium.org, Oct 19

Issue description

https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8932238679230758304

chromeos-config-tools-0.0.2-r1136:  * Direct leak of 4 byte(s) in 1 object(s) allocated from:
chromeos-config-tools-0.0.2-r1136:  *     #0 0x7fd28f2b48e3 in __interceptor_malloc _asan_rtl_:3
chromeos-config-tools-0.0.2-r1136:  *     #1 0x7fd28f1a6a19 in brillo::CrosConfigIdentityArm::Fake(std::__1::basic_string, std::__1::allocator > const&, int, base::FilePath*, base::FilePath*) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/identity_arm.cc:31:47
chromeos-config-tools-0.0.2-r1136:  *     #2 0x7fd28f16531c in brillo::CrosConfig::InitForTestArm(base::FilePath const&, std::__1::basic_string, std::__1::allocator > const&, int, std::__1::basic_string, std::__1::allocator > const&) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config.cc:87:17
chromeos-config-tools-0.0.2-r1136:  *     #3 0x7fd28f2f225e in CrosConfigTest_CheckArmNoIdentityMatch_Test::TestBody() /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:242:3
chromeos-config-tools-0.0.2-r1136:  *     #4 0x7fd28f139e83 in void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2402:10
chromeos-config-tools-0.0.2-r1136:  *     #5 0x7fd28f139e83 in void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438:0
chromeos-config-tools-0.0.2-r1136:  *     #6 0x7fd28f120520 in testing::Test::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2474:5
chromeos-config-tools-0.0.2-r1136:  *     #7 0x7fd28f12147f in testing::TestInfo::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2656:11
chromeos-config-tools-0.0.2-r1136:  *     #8 0x7fd28f121b06 in testing::TestCase::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2774:28
chromeos-config-tools-0.0.2-r1136:  *     #9 0x7fd28f12a6c6 in testing::internal::UnitTestImpl::RunAllTests() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:4649:43
chromeos-config-tools-0.0.2-r1136:  *     #10 0x7fd28f13a9a3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2402:10
chromeos-config-tools-0.0.2-r1136:  *     #11 0x7fd28f13a9a3 in bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438:0
chromeos-config-tools-0.0.2-r1136:  *     #12 0x7fd28f12a28c in testing::UnitTest::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:4257:10
chromeos-config-tools-0.0.2-r1136:  *     #13 0x7fd28f2f3aec in RUN_ALL_TESTS() /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../usr/include/gtest/gtest.h:2233:46
chromeos-config-tools-0.0.2-r1136:  *     #14 0x7fd28f2f3aec in main /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:270:0
chromeos-config-tools-0.0.2-r1136:  *     #15 0x7fd28d787735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r21/work/glibc-2.23/csu/../csu/libc-start.c:289:0
chromeos-config-tools-0.0.2-r1136:  *     #16 0x7fd28f20ca28 in _start ??:0:0
chromeos-config-tools-0.0.2-r1136:  * 
chromeos-config-tools-0.0.2-r1136:  * Direct leak of 4 byte(s) in 1 object(s) allocated from:
chromeos-config-tools-0.0.2-r1136:  *     #0 0x7fd28f2b48e3 in __interceptor_malloc _asan_rtl_:3
chromeos-config-tools-0.0.2-r1136:  *     #1 0x7fd28f1a76e6 in brillo::CrosConfigIdentityArm::ReadInfo(base::FilePath const&, base::FilePath const&) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/identity_arm.cc:46:47
chromeos-config-tools-0.0.2-r1136:  *     #2 0x7fd28f165975 in brillo::CrosConfig::SelectConfigByIdentityArm(base::FilePath const&, base::FilePath const&, base::FilePath const&, int) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config.cc:204:17
chromeos-config-tools-0.0.2-r1136:  *     #3 0x7fd28f165362 in brillo::CrosConfig::InitForTestArm(base::FilePath const&, std::__1::basic_string, std::__1::allocator > const&, int, std::__1::basic_string, std::__1::allocator > const&) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config.cc:93:10
chromeos-config-tools-0.0.2-r1136:  *     #4 0x7fd28f2f225e in CrosConfigTest_CheckArmNoIdentityMatch_Test::TestBody() /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:242:3
chromeos-config-tools-0.0.2-r1136:  *     #5 0x7fd28f139e83 in void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2402:10
chromeos-config-tools-0.0.2-r1136:  *     #6 0x7fd28f139e83 in void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438:0
chromeos-config-tools-0.0.2-r1136:  *     #7 0x7fd28f120520 in testing::Test::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2474:5
chromeos-config-tools-0.0.2-r1136:  *     #8 0x7fd28f12147f in testing::TestInfo::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2656:11
chromeos-config-tools-0.0.2-r1136:  *     #9 0x7fd28f121b06 in testing::TestCase::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2774:28
chromeos-config-tools-0.0.2-r1136:  *     #10 0x7fd28f12a6c6 in testing::internal::UnitTestImpl::RunAllTests() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:4649:43
chromeos-config-tools-0.0.2-r1136:  *     #11 0x7fd28f13a9a3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2402:10
chromeos-config-tools-0.0.2-r1136:  *     #12 0x7fd28f13a9a3 in bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438:0
chromeos-config-tools-0.0.2-r1136:  *     #13 0x7fd28f12a28c in testing::UnitTest::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:4257:10
chromeos-config-tools-0.0.2-r1136:  *     #14 0x7fd28f2f3aec in RUN_ALL_TESTS() /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../usr/include/gtest/gtest.h:2233:46
chromeos-config-tools-0.0.2-r1136:  *     #15 0x7fd28f2f3aec in main /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:270:0
chromeos-config-tools-0.0.2-r1136:  *     #16 0x7fd28d787735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r21/work/glibc-2.23/csu/../csu/libc-start.c:289:0
chromeos-config-tools-0.0.2-r1136:  *     #17 0x7fd28f20ca28 in _start ??:0:0
chromeos-config-tools-0.0.2-r1136:  * 
chromeos-config-tools-0.0.2-r1136:  * Direct leak of 4 byte(s) in 1 object(s) allocated from:
chromeos-config-tools-0.0.2-r1136:  *     #0 0x7fd28f2b48e3 in __interceptor_malloc _asan_rtl_:3
chromeos-config-tools-0.0.2-r1136:  *     #1 0x7fd28f1a6a19 in brillo::CrosConfigIdentityArm::Fake(std::__1::basic_string, std::__1::allocator > const&, int, base::FilePath*, base::FilePath*) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/identity_arm.cc:31:47
chromeos-config-tools-0.0.2-r1136:  *     #2 0x7fd28f16531c in brillo::CrosConfig::InitForTestArm(base::FilePath const&, std::__1::basic_string, std::__1::allocator > const&, int, std::__1::basic_string, std::__1::allocator > const&) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config.cc:87:17
chromeos-config-tools-0.0.2-r1136:  *     #3 0x7fd28f2f42c1 in CrosConfigTest::InitConfigArm(std::__1::basic_string, std::__1::allocator >, int, std::__1::basic_string, std::__1::allocator >) /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:39:5
chromeos-config-tools-0.0.2-r1136:  *     #4 0x7fd28f2edc6d in CrosConfigTest_CheckArmIdentityByDeviceName_Test::TestBody() /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:195:3
chromeos-config-tools-0.0.2-r1136:  *     #5 0x7fd28f139e83 in void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2402:10
chromeos-config-tools-0.0.2-r1136:  *     #6 0x7fd28f139e83 in void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438:0
chromeos-config-tools-0.0.2-r1136:  *     #7 0x7fd28f120520 in testing::Test::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2474:5
chromeos-config-tools-0.0.2-r1136:  *     #8 0x7fd28f12147f in testing::TestInfo::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2656:11
chromeos-config-tools-0.0.2-r1136:  *     #9 0x7fd28f121b06 in testing::TestCase::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2774:28
chromeos-config-tools-0.0.2-r1136:  *     #10 0x7fd28f12a6c6 in testing::internal::UnitTestImpl::RunAllTests() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:4649:43
chromeos-config-tools-0.0.2-r1136:  *     #11 0x7fd28f13a9a3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2402:10
chromeos-config-tools-0.0.2-r1136:  *     #12 0x7fd28f13a9a3 in bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438:0
chromeos-config-tools-0.0.2-r1136:  *     #13 0x7fd28f12a28c in testing::UnitTest::Run() /build/amd64-generic/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:4257:10
chromeos-config-tools-0.0.2-r1136:  *     #14 0x7fd28f2f3aec in RUN_ALL_TESTS() /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../usr/include/gtest/gtest.h:2233:46
chromeos-config-tools-0.0.2-r1136:  *     #15 0x7fd28f2f3aec in main /build/amd64-generic/var/cache/portage/chromeos-base/chromeos-config-tools/out/Default/../../../../../../../tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config/libcros_config/cros_config_test.cc:270:0
chromeos-config-tools-0.0.2-r1136:  *     #16 0x7fd28d787735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r21/work/glibc-2.23/csu/../csu/libc-start.c:289:0
chromeos-config-tools-0.0.2-r1136:  *     #17 0x7fd28f20ca28 in _start ??:0:0
chromeos-config-tools-0.0.2-r1136:  * 
chromeos-config-tools-0.0.2-r1136:  * SUMMARY: AddressSanitizer: 64 byte(s) leaked in 16 allocation(s).
chromeos-config-tools-0.0.2-r1136:  * The complete build log is located at '/build/amd64-generic/tmp/portage/logs/chromeos-base:chromeos-config-tools-0.0.2-r1136:20181019-134217.log'.
chromeos-config-tools-0.0.2-r1136:  * For convenience, a symlink to the build log is located at '/build/amd64-generic/tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/temp/build.log'.
chromeos-config-tools-0.0.2-r1136:  * The ebuild environment file is located at '/build/amd64-generic/tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/temp/environment'.
chromeos-config-tools-0.0.2-r1136:  * Working directory: '/build/amd64-generic/tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config'
chromeos-config-tools-0.0.2-r1136:  * S: '/build/amd64-generic/tmp/portage/chromeos-base/chromeos-config-tools-0.0.2-r1136/work/chromeos-config-tools-0.0.2/chromeos-config'
=== Complete: job chromeos-config-tools-0.0.2-r1136 (0m10.6s) ===

To repro:

$ ./setup_board --board=amd64-generic --profile=asan
$ ./build_packages --board=amd64-generic chromeos-config-tools
$ FEATURES=test emerge-amd64-generic chromeos-config-tools
 
What's the progress on this bug?  Is anybody actually looking into it?  Is there someone else we should try to assign it to?
I think this falls to Charles' team now
philipchen@ ... this aligns pretty close to:
https://chromium-review.googlesource.com/c/chromiumos/platform2/+/1271458

Can you take a look?
Will take a look shortly.
Status: Started (was: Untriaged)
Project Member

Comment 6 by bugdroid1@chromium.org, Oct 27

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/e24e5b5ff186d64a8cf20986e280ce04f29af96b

commit e24e5b5ff186d64a8cf20986e280ce04f29af96b
Author: Philip Chen <philipchen@google.com>
Date: Sat Oct 27 00:19:12 2018

chromeos-config: Fix a memory leak

BUG= chromium:897180 , b:115771305
TEST='FEATURES=test emerge-amd64-generic chromeos-config-tools'

Change-Id: I05a34a40d6e88eab12c8364b24b46434ef701f49
Reviewed-on: https://chromium-review.googlesource.com/1298434
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Philip Chen <philipchen@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: C Shapiro <shapiroc@chromium.org>

[modify] https://crrev.com/e24e5b5ff186d64a8cf20986e280ce04f29af96b/chromeos-config/libcros_config/identity_arm.cc

Status: Fixed (was: Started)

Sign in to add a comment