New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 844615 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug
Build-Toolchain



Sign in to add a comment

memory leaks in minijail with address sanitizer build

Project Member Reported by manojgupta@chromium.org, May 18 2018

Issue description

Project Member

Comment 1 by bugdroid1@chromium.org, May 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/e7bbb0d3c8f894ce2405d93f3caa88645bf24985

commit e7bbb0d3c8f894ce2405d93f3caa88645bf24985
Author: Manoj Gupta <manojgupta@google.com>
Date: Sat May 19 18:56:14 2018

minijail: Enable asan.

Enable asan builds for minijail.
Currently seems like minijail is leaking memory when
running unit tests.
https://ci.chromium.org/p/chromeos/builds/b8946172130625339136

BUG= chromium:844615 
TEST=minijail builds
Change-Id: I2833a4ffdf5ca329b2f10f4197334f6e8164330e
Reviewed-on: https://chromium-review.googlesource.com/1066616
Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[rename] https://crrev.com/e7bbb0d3c8f894ce2405d93f3caa88645bf24985/chromeos-base/minijail/minijail-1-r12.ebuild
[modify] https://crrev.com/e7bbb0d3c8f894ce2405d93f3caa88645bf24985/chromeos-base/minijail/minijail-9999.ebuild

Comment 2 by vapier@chromium.org, May 21 2018

Components: Tests
logs expire, so it's best to attach them

i think this CL should fix most of the leaks.  it doesn't seem to slow down the test that much (<100msec).
  https://android-review.googlesource.com/690541
minijail.log
331 KB View Download
Cc: xiaoyinh@chromium.org petershih@chromium.org zhihongyu@chromium.org
+ Sheriffs
Looks like this is also failing amd64-generic-tot-asan-informational:
https://cros-goldeneye.corp.google.com/chromeos/legoland/builderHistory?buildConfig=amd64-generic-tot-asan-informational&buildBranch=master

Logs for most recent failure could be found here:
https://luci-logdog.appspot.com/v/?s=chromeos/buildbucket/cr-buildbucket.appspot.com/8945915321187566384/+/steps/UnitTest/0/stdout


Cc: njankovic@google.com
There's still some memory leaks on latest amd64-generic-tot-asan-informational.

Log: https://luci-logdog.appspot.com/v/?s=chromeos/buildbucket/cr-buildbucket.appspot.com/8945737956673811760/+/steps/UnitTest/0/stdout

minijail-1-r12:  * SUMMARY: AddressSanitizer: 29 byte(s) leaked in 4 allocation(s).
minijail-1-r12:  * ASAN error detected:
minijail-1-r12:  * 
minijail-1-r12:  * =================================================================
minijail-1-r12:  * ==29135==ERROR: LeakSanitizer: detected memory leaks
minijail-1-r12:  * 
minijail-1-r12:  * Direct leak of 9 byte(s) in 1 object(s) allocated from:
minijail-1-r12:  *     #0 0x7f023844715d in __interceptor___strdup (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0xb415d)
minijail-1-r12:  *     #1 0x7f02384bd4d5 in minijail_uidmap /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/libminijail.c:532:14
minijail-1-r12:  *     #2 0x7f02384def8c in set_ugid_mapping /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:245:12
minijail-1-r12:  *     #3 0x7f02384def8c in parse_args /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:741
minijail-1-r12:  *     #4 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, int*, ElfTypeEnum*) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:58:15
minijail-1-r12:  *     #5 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:67
minijail-1-r12:  *     #6 0x7f02384a23c4 in CliTest_valid_uidmap_Test::TestBody() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:310:3
minijail-1-r12:  *     #7 0x7f02383485f3 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #8 0x7f02383485f3 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #9 0x7f023832c1a0 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
minijail-1-r12:  *     #10 0x7f023832d2ff 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
minijail-1-r12:  *     #11 0x7f023832d9f6 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
minijail-1-r12:  *     #12 0x7f02383369a6 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
minijail-1-r12:  *     #13 0x7f02383493c3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #14 0x7f02383493c3 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #15 0x7f023833655e 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
minijail-1-r12:  *     #16 0x7f02384e2530 in RUN_ALL_TESTS() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/../../../../../../usr/include/gtest/gtest.h:2233:46
minijail-1-r12:  *     #17 0x7f02384e2530 in main /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/testrunner.cc:31
minijail-1-r12:  *     #18 0x7f02374b2735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r18/work/glibc-2.23/csu/../csu/libc-start.c:289
minijail-1-r12:  *     #19 0x7f02383b5518 in _start (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0x22518)
minijail-1-r12:  * 
minijail-1-r12:  * Direct leak of 8 byte(s) in 1 object(s) allocated from:
minijail-1-r12:  *     #0 0x7f023844715d in __interceptor___strdup (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0xb415d)
minijail-1-r12:  *     #1 0x7f02384bd695 in minijail_gidmap /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/libminijail.c:545:14
minijail-1-r12:  *     #2 0x7f02384df0a7 in set_ugid_mapping /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:272:12
minijail-1-r12:  *     #3 0x7f02384df0a7 in parse_args /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:741
minijail-1-r12:  *     #4 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, int*, ElfTypeEnum*) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:58:15
minijail-1-r12:  *     #5 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:67
minijail-1-r12:  *     #6 0x7f02384a3434 in CliTest_valid_gidmap_Test::TestBody() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:325:3
minijail-1-r12:  *     #7 0x7f02383485f3 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #8 0x7f02383485f3 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #9 0x7f023832c1a0 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
minijail-1-r12:  *     #10 0x7f023832d2ff 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
minijail-1-r12:  *     #11 0x7f023832d9f6 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
minijail-1-r12:  *     #12 0x7f02383369a6 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
minijail-1-r12:  *     #13 0x7f02383493c3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #14 0x7f02383493c3 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #15 0x7f023833655e 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
minijail-1-r12:  *     #16 0x7f02384e2530 in RUN_ALL_TESTS() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/../../../../../../usr/include/gtest/gtest.h:2233:46
minijail-1-r12:  *     #17 0x7f02384e2530 in main /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/testrunner.cc:31
minijail-1-r12:  *     #18 0x7f02374b2735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r18/work/glibc-2.23/csu/../csu/libc-start.c:289
minijail-1-r12:  *     #19 0x7f02383b5518 in _start (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0x22518)
minijail-1-r12:  * 
minijail-1-r12:  * Direct leak of 6 byte(s) in 1 object(s) allocated from:
minijail-1-r12:  *     #0 0x7f023844715d in __interceptor___strdup (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0xb415d)
minijail-1-r12:  *     #1 0x7f02384bd695 in minijail_gidmap /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/libminijail.c:545:14
minijail-1-r12:  *     #2 0x7f02384df0a7 in set_ugid_mapping /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:272:12
minijail-1-r12:  *     #3 0x7f02384df0a7 in parse_args /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:741
minijail-1-r12:  *     #4 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, int*, ElfTypeEnum*) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:58:15
minijail-1-r12:  *     #5 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:67
minijail-1-r12:  *     #6 0x7f02384a35b7 in CliTest_valid_gidmap_Test::TestBody() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:329:3
minijail-1-r12:  *     #7 0x7f02383485f3 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #8 0x7f02383485f3 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #9 0x7f023832c1a0 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
minijail-1-r12:  *     #10 0x7f023832d2ff 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
minijail-1-r12:  *     #11 0x7f023832d9f6 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
minijail-1-r12:  *     #12 0x7f02383369a6 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
minijail-1-r12:  *     #13 0x7f02383493c3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #14 0x7f02383493c3 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #15 0x7f023833655e 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
minijail-1-r12:  *     #16 0x7f02384e2530 in RUN_ALL_TESTS() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/../../../../../../usr/include/gtest/gtest.h:2233:46
minijail-1-r12:  *     #17 0x7f02384e2530 in main /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/testrunner.cc:31
minijail-1-r12:  *     #18 0x7f02374b2735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r18/work/glibc-2.23/csu/../csu/libc-start.c:289
minijail-1-r12:  *     #19 0x7f02383b5518 in _start (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0x22518)
minijail-1-r12:  * 
minijail-1-r12:  * Direct leak of 6 byte(s) in 1 object(s) allocated from:
minijail-1-r12:  *     #0 0x7f023844715d in __interceptor___strdup (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0xb415d)
minijail-1-r12:  *     #1 0x7f02384bd4d5 in minijail_uidmap /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/libminijail.c:532:14
minijail-1-r12:  *     #2 0x7f02384def8c in set_ugid_mapping /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:245:12
minijail-1-r12:  *     #3 0x7f02384def8c in parse_args /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli.c:741
minijail-1-r12:  *     #4 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, int*, ElfTypeEnum*) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:58:15
minijail-1-r12:  *     #5 0x7f023848d501 in (anonymous namespace)::CliTest::parse_args_(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:67
minijail-1-r12:  *     #6 0x7f02384a2547 in CliTest_valid_uidmap_Test::TestBody() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest.cc:314:3
minijail-1-r12:  *     #7 0x7f02383485f3 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #8 0x7f02383485f3 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(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
minijail-1-r12:  *     #9 0x7f023832c1a0 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
minijail-1-r12:  *     #10 0x7f023832d2ff 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
minijail-1-r12:  *     #11 0x7f023832d9f6 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
minijail-1-r12:  *     #12 0x7f02383369a6 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
minijail-1-r12:  *     #13 0x7f02383493c3 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #14 0x7f02383493c3 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(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
minijail-1-r12:  *     #15 0x7f023833655e 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
minijail-1-r12:  *     #16 0x7f02384e2530 in RUN_ALL_TESTS() /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/../../../../../../usr/include/gtest/gtest.h:2233:46
minijail-1-r12:  *     #17 0x7f02384e2530 in main /build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/testrunner.cc:31
minijail-1-r12:  *     #18 0x7f02374b2735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r18/work/glibc-2.23/csu/../csu/libc-start.c:289
minijail-1-r12:  *     #19 0x7f02383b5518 in _start (/build/amd64-generic/tmp/portage/chromeos-base/minijail-1-r12/work/minijail-1/minijail0_cli_unittest+0x22518)


I think Mike fixed Minijail but I don't know whether we rolled it in Chrome OS. If we didn't, the fixes wouldn't be making it in.
Re#6: Hi Jorge, is there a way to tell if the CL in comment#2 has been rolled into ChromeOS or not? The latest amd64-generic-tot-asan-informational is building with Chrome OS 10709.0.0
Ah sorry I should have been clearer. Minijail needs to be manually rolled, so the CL is probably not yet in.

In fact I just checked and I don't think the CL is in. I'll submit an uprev hopefully today and hopefully the bot will stop failing.
Thank you!
my CL didn't fix all the leaks.  fairly certain libminijail_unittest will continue to fail.
That's OK, we'll iterate on this. I'll try to repro the libminijail failures today.
Project Member

Comment 12 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/fdb093d3c38f28945f30c2464b3eb3c3bb9bb026

commit fdb093d3c38f28945f30c2464b3eb3c3bb9bb026
Author: Jorge Lucangeli Obes <jorgelo@chromium.org>
Date: Thu May 24 15:44:43 2018

Uprev Minijail for memory leak fixes.

Pulled 2 new changes from platform/external/minijail: (ebuild: chromeos-base/minijail)

  2892c1d minijail0_cli_unittest: fix leaks in unittests
  33d4985 whitelist writev for logging on all architectures

BUG= chromium:844615 
TEST=Builds, PreCQ passes.

Change-Id: Ic42b93098c1ad17d15893997eeb4025ab9bdc641
Reviewed-on: https://chromium-review.googlesource.com/1070344
Commit-Ready: Jorge Lucangeli Obes <jorgelo@chromium.org>
Tested-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[rename] https://crrev.com/fdb093d3c38f28945f30c2464b3eb3c3bb9bb026/chromeos-base/minijail/minijail-1-r13.ebuild

I've confirmed that Mike's CL fixes the strdup() related leaks.

Remaining ones are:

 * =================================================================
 * ==23104==ERROR: LeakSanitizer: detected memory leaks
 * 
 * Direct leak of 1336 byte(s) in 1 object(s) allocated from:
 *     #0 0x56090904ec1a in __interceptor_calloc (/mnt/host/source/src/aosp/external/minijail/libminijail_unittest+0xc8c1a)
 *     #1 0x5609090b90f5 in minijail_new /mnt/host/source/src/aosp/external/minijail/libminijail.c:260:23
 *     #2 0x56090908aa9b in Test_test_minijail_fork_Test::TestBody() /mnt/host/source/src/aosp/external/minijail/libminijail_unittest.cc:273:24
 *     #3 0x7fe6bb9194b3 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /build/samus/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
 *     #4 0x7fe6bb9194b3 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /build/samus/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438
 *     #5 0x7fe6bb8fd150 in testing::Test::Run() /build/samus/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
 *     #6 0x7fe6bb8fe2af in testing::TestInfo::Run() /build/samus/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
 *     #7 0x7fe6bb8fe9a6 in testing::TestCase::Run() /build/samus/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
 *     #8 0x7fe6bb9078f6 in testing::internal::UnitTestImpl::RunAllTests() /build/samus/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
 *     #9 0x7fe6bb91a283 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/samus/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
 *     #10 0x7fe6bb91a283 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/samus/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438
 *     #11 0x7fe6bb9074ae in testing::UnitTest::Run() /build/samus/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
 *     #12 0x5609090db3c0 in RUN_ALL_TESTS() /mnt/host/source/src/aosp/external/minijail/../../../../../../../build/samus/usr/include/gtest/gtest.h:2233:46
 *     #13 0x5609090db3c0 in main /mnt/host/source/src/aosp/external/minijail/testrunner.cc:31
 *     #14 0x7fe6baa83735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r18/work/glibc-2.23/csu/../csu/libc-start.c:289
 *     #15 0x560908fa7fd8 in _start (/mnt/host/source/src/aosp/external/minijail/libminijail_unittest+0x21fd8)
 * 
 * SUMMARY: AddressSanitizer: 1336 byte(s) leaked in 1 allocation(s).



 * ASAN error detected:
 * 
 * =================================================================
 * ==23624==ERROR: LeakSanitizer: detected memory leaks
 * 
 * Direct leak of 1336 byte(s) in 1 object(s) allocated from:
 *     #0 0x55b07a882c1a in __interceptor_calloc (/mnt/host/source/src/aosp/external/minijail/libminijail_unittest+0xc8c1a)
 *     #1 0x55b07a8ed0f5 in minijail_new /mnt/host/source/src/aosp/external/minijail/libminijail.c:260:23
 *     #2 0x55b07a8bea9b in Test_test_minijail_fork_Test::TestBody() /mnt/host/source/src/aosp/external/minijail/libminijail_unittest.cc:273:24
 *     #3 0x7f87c31474b3 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /build/samus/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
 *     #4 0x7f87c31474b3 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /build/samus/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438
 *     #5 0x7f87c312b150 in testing::Test::Run() /build/samus/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
 *     #6 0x7f87c312c2af in testing::TestInfo::Run() /build/samus/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
 *     #7 0x7f87c312c9a6 in testing::TestCase::Run() /build/samus/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
 *     #8 0x7f87c31358f6 in testing::internal::UnitTestImpl::RunAllTests() /build/samus/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
 *     #9 0x7f87c3148283 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/samus/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
 *     #10 0x7f87c3148283 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /build/samus/tmp/portage/dev-cpp/gtest-1.8.0-r1/work/googletest-release-1.8.0/googletest-abi_x86_64.amd64/./src/gtest.cc:2438
 *     #11 0x7f87c31354ae in testing::UnitTest::Run() /build/samus/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
 *     #12 0x55b07a90f3c0 in RUN_ALL_TESTS() /mnt/host/source/src/aosp/external/minijail/../../../../../../../build/samus/usr/include/gtest/gtest.h:2233:46
 *     #13 0x55b07a90f3c0 in main /mnt/host/source/src/aosp/external/minijail/testrunner.cc:31
 *     #14 0x7f87c22b1735 in __libc_start_main /var/tmp/portage/cross-x86_64-cros-linux-gnu/glibc-2.23-r18/work/glibc-2.23/csu/../csu/libc-start.c:289
 *     #15 0x55b07a7dbfd8 in _start (/mnt/host/source/src/aosp/external/minijail/libminijail_unittest+0x21fd8)
 * 
 * SUMMARY: AddressSanitizer: 1336 byte(s) leaked in 1 allocation(s).
https://android-review.googlesource.com/#/c/platform/external/minijail/+/693462 should fix these remaining reports. It'll likely take a couple of days for that to land and for Minijail to get uprev'ed again.
Project Member

Comment 15 by bugdroid1@chromium.org, May 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/ed9186ee3e99a9ba4ca25ee79ad26076b1feee94

commit ed9186ee3e99a9ba4ca25ee79ad26076b1feee94
Author: Jorge Lucangeli Obes <jorgelo@chromium.org>
Date: Sat May 26 03:32:07 2018

Uprev Minijail for more ASan-related fixes.

Pulled 3 new changes from platform/external/minijail: (ebuild: chromeos-base/minijail)

  1653280 minijail: Fix alleged leaks.
  6f4e93d improve mount (-k) cli
  e34d7fe improve rlimit (-R) cli

BUG= chromium:844615 
TEST=Builds, ASan-ified unit tests pass, PreCQ passes.

Change-Id: I8fe5bbe815cd001f9dabddca4283f42fececa0b0
Reviewed-on: https://chromium-review.googlesource.com/1072552
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[rename] https://crrev.com/ed9186ee3e99a9ba4ca25ee79ad26076b1feee94/chromeos-base/minijail/minijail-1-r14.ebuild

Status: Started (was: Untriaged)
After these CLs, I can run Minijail unit tests with ASan without failures.
Status: Fixed (was: Started)
Components: OS>Systems>Minijail

Sign in to add a comment