New issue
Advanced search Search tips

Issue 894977 link

Starred by 2 users

Issue metadata

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



Sign in to add a comment

drivefs unit tests failing on betty-asan

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

Issue description

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

drivefs-0.0.1-r123:  * 
drivefs-0.0.1-r123:  * Indirect leak of 8 byte(s) in 1 object(s) allocated from:
drivefs-0.0.1-r123:  *     #0 0x7fa564e85cc2 in operator new(unsigned long) _asan_rtl_:3
drivefs-0.0.1-r123:  *     #1 0x7fa562a5547f in std::__1::__libcpp_allocate(unsigned long, unsigned long) /usr/bin/../include/c++/v1/new:259:10
drivefs-0.0.1-r123:  *     #2 0x7fa562a5547f in std::__1::allocator<base::PendingTask*>::allocate(unsigned long, void const*) /usr/bin/../include/c++/v1/memory:1799:0
drivefs-0.0.1-r123:  *     #3 0x7fa562a5547f in std::__1::allocator_traits<std::__1::allocator<base::PendingTask*> >::allocate(std::__1::allocator<base::PendingTask*>&, unsigned long) /usr/bin/../include/c++/v1/memory:1548:0
drivefs-0.0.1-r123:  *     #4 0x7fa562a5547f in std::__1::__split_buffer<base::PendingTask*, std::__1::allocator<base::PendingTask*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<base::PendingTask*>&) /usr/bin/../include/c++/v1/__split_buffer:311:0
drivefs-0.0.1-r123:  *     #5 0x7fa562a51640 in std::__1::deque<base::PendingTask, std::__1::allocator<base::PendingTask> >::__add_back_capacity() /usr/bin/../include/c++/v1/deque:2477:13
drivefs-0.0.1-r123:  *     #6 0x7fa562a50ab2 in std::__1::deque<base::PendingTask, std::__1::allocator<base::PendingTask> >::push_back(base::PendingTask const&) /usr/bin/../include/c++/v1/deque:1822:9
drivefs-0.0.1-r123:  *     #7 0x7fa562a4dc68 in std::__1::queue<base::PendingTask, std::__1::deque<base::PendingTask, std::__1::allocator<base::PendingTask> > >::push(base::PendingTask const&) /usr/bin/../include/c++/v1/queue:306:41
drivefs-0.0.1-r123:  *     #8 0x7fa562a4dc68 in base::internal::IncomingTaskQueue::PostPendingTask(base::PendingTask*) /build/betty/tmp/portage/chromeos-base/libchrome-395517-r45/work/libchrome-395517/base/message_loop/incoming_task_queue.cc:159:0
drivefs-0.0.1-r123:  *     #9 0x7fa562a4d906 in base::internal::IncomingTaskQueue::AddToIncomingQueue(tracked_objects::Location const&, base::Callback<void (), (base::internal::CopyMode)1> const&, base::TimeDelta, bool) /build/betty/tmp/portage/chromeos-base/libchrome-395517-r45/work/libchrome-395517/base/message_loop/incoming_task_queue.cc:85:10
drivefs-0.0.1-r123:  *     #10 0x7fa562a85d76 in base::internal::MessageLoopTaskRunner::PostDelayedTask(tracked_objects::Location const&, base::Callback<void (), (base::internal::CopyMode)1> const&, base::TimeDelta) /build/betty/tmp/portage/chromeos-base/libchrome-395517-r45/work/libchrome-395517/base/message_loop/message_loop_task_runner.cc:30:27
drivefs-0.0.1-r123:  *     #11 0x7fa56534113e in mojo::Watcher::CallOnHandleReady(unsigned long, unsigned int, MojoHandleSignalsState, unsigned int) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/system/watcher.cc:144:28
drivefs-0.0.1-r123:  *     #12 0x7fa5651ca9e3 in void base::internal::InvokeHelper<false, void, base::internal::RunnableAdapter<void (*)(void (*)(unsigned long, unsigned int, MojoHandleSignalsState, unsigned int), unsigned long, unsigned int, mojo::edk::HandleSignalsState const&, unsigned int)> >::MakeItSo<void (* const&)(unsigned long, unsigned int, MojoHandleSignalsState, unsigned int), unsigned long const&, unsigned int, mojo::edk::HandleSignalsState const&, unsigned int>(base::internal::RunnableAdapter<void (*)(void (*)(unsigned long, unsigned int, MojoHandleSignalsState, unsigned int), unsigned long, unsigned int, mojo::edk::HandleSignalsState const&, unsigned int)>, void (* const&)(unsigned long, unsigned int, MojoHandleSignalsState, unsigned int), unsigned long const&, unsigned int&&, mojo::edk::HandleSignalsState const&, unsigned int&&) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/../../../../../../usr/include/base-395517/base/bind_internal.h:311:14
drivefs-0.0.1-r123:  *     #13 0x7fa5652f669f in base::Callback<void (unsigned int, mojo::edk::HandleSignalsState const&, unsigned int), (base::internal::CopyMode)1>::Run(unsigned int, mojo::edk::HandleSignalsState const&, unsigned int) const /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/../../../../../../usr/include/base-395517/base/callback.h:397:12
drivefs-0.0.1-r123:  *     #14 0x7fa5652f5b6c in mojo::edk::Watcher::MaybeInvokeCallback(unsigned int, mojo::edk::HandleSignalsState const&, unsigned int) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/edk/system/watcher.cc:24:13
drivefs-0.0.1-r123:  *     #15 0x7fa5652ba06e in mojo::edk::RequestContext::~RequestContext() /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/edk/system/request_context.cc:49:22
drivefs-0.0.1-r123:  *     #16 0x7fa5651bc746 in mojo::edk::Core::WriteMessageNew(unsigned int, unsigned long, unsigned int) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/edk/system/core.cc:580:1
drivefs-0.0.1-r123:  *     #17 0x7fa5652fe1f7 in mojo::WriteMessageNew(mojo::MessagePipeHandle, mojo::ScopedHandleBase<mojo::MessageHandle>, unsigned int) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/./mojo/public/cpp/system/message_pipe.h:97:10
drivefs-0.0.1-r123:  *     #18 0x7fa5652fc2dc in mojo::internal::Connector::Accept(mojo::Message*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/connector.cc:153:7
drivefs-0.0.1-r123:  *     #19 0x7fa565318f06 in mojo::internal::Router::Accept(mojo::Message*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/router.cc:144:21
drivefs-0.0.1-r123:  *     #20 0x7fa56531e613 in mojo::internal::(anonymous namespace)::ResponderThunk::Accept(mojo::Message*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/router.cc:67:25
drivefs-0.0.1-r123:  *     #21 0x7fa565163865 in drivefs::mojom::SearchQuery_GetNextPage_ProxyToResponder::Run(drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >) /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/gen/include/mojom/drivefs.mojom.cc:5902:25
drivefs-0.0.1-r123:  *     #22 0x7fa56511ea70 in mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)>::Run(drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >) const /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/../../../../../../../../usr/include/libmojo-395517/mojo/public/cpp/bindings/callback.h:82:24
drivefs-0.0.1-r123:  *     #23 0x7fa565121256 in drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&)::'lambda'(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)::operator()(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >) const /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/../../../drivefs-0.0.1/platform/drivefs/ipc_server.cc:319:22
drivefs-0.0.1-r123:  *     #24 0x7fa565120aa8 in decltype(std::__1::forward<drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&)::'lambda'(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)&>(fp)(std::__1::forward<drive::ds::Status>(fp0), std::__1::forward<std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> > >(fp0))) std::__1::__invoke<drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&)::'lambda'(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)&, drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> > >(drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&)::'lambda'(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)&, drive::ds::Status&&, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >&&) /usr/bin/../include/c++/v1/type_traits:4345:1
drivefs-0.0.1-r123:  *     #25 0x7fa565120aa8 in void std::__1::__invoke_void_return_wrapper<void>::__call<drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&)::'lambda'(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)&, drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> > >(drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&)::'lambda'(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)&, drive::ds::Status&&, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >&&) /usr/bin/../include/c++/v1/__functional_base:349:0
drivefs-0.0.1-r123:  *     #26 0x7fa564f0b996 in std::__1::function<void (drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)>::operator()(drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >) const /usr/bin/../include/c++/v1/functional:1913:12
drivefs-0.0.1-r123:  *     #27 0x7fa564fe1a5e in drivefs::(anonymous namespace)::MockChromeOSCoreClient::GetNextQueryPage(cello::fs::ViewQueryId, std::__1::function<void (drive::ds::Status, std::__1::unique_ptr<drive::ds::ItemQueryResponse, std::__1::default_delete<drive::ds::ItemQueryResponse> >)> const&) /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/../../../drivefs-0.0.1/platform/drivefs/ipc_server_unittest.cc:87:5
drivefs-0.0.1-r123:  *     #28 0x7fa56511e00c in drivefs::IpcServer::SearchQuery::GetNextPage(mojo::Callback<void (drivefs::mojom::FileError, mojo::Array<mojo::StructPtr<drivefs::mojom::QueryItem> >)> const&) /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/../../../drivefs-0.0.1/platform/drivefs/ipc_server.cc:308:32
drivefs-0.0.1-r123:  *     #29 0x7fa5651643c2 in drivefs::mojom::SearchQueryStub::AcceptWithResponder(mojo::Message*, mojo::MessageReceiverWithStatus*) /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/gen/include/mojom/drivefs.mojom.cc:5958:14
drivefs-0.0.1-r123:  *     #30 0x7fa56531be7d in mojo::internal::Router::HandleMessageInternal(mojo::Message*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/router.cc:255:35
drivefs-0.0.1-r123:  *     #31 0x7fa5653179c0 in mojo::internal::Router::HandleIncomingMessage(mojo::Message*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/router.cc:217:10
drivefs-0.0.1-r123:  *     #32 0x7fa565164aaf in drivefs::mojom::SearchQueryRequestValidator::Accept(mojo::Message*) /build/betty/tmp/portage/chromeos-base/drivefs-0.0.1-r123/work/build/out/Default/gen/include/mojom/drivefs.mojom.cc:0:19
drivefs-0.0.1-r123:  *     #33 0x7fa565316cbc in mojo::internal::MessageHeaderValidator::Accept(mojo::Message*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/message_header_validator.cc:73:17
drivefs-0.0.1-r123:  *     #34 0x7fa5652fb92e in mojo::internal::Connector::ReadSingleMessage(unsigned int*) /build/betty/tmp/portage/chromeos-base/libmojo-395517-r9/work/libmojo-395517/mojo/public/cpp/bindings/lib/connector.cc:271:51
drivefs-0.0.1-r123:  * 
drivefs-0.0.1-r123:  * SUMMARY: AddressSanitizer: 23504 byte(s) leaked in 87 allocation(s).

To repro:

$ ./setup_board --board=betty --profile=asan
$ ./build_package --board=betty drivefs
$ USE=asan FEATURES=test emerge-betty drivefs

 
Labels: -Pri-3 Pri-2
Cc: sa...@chromium.org
Owner: hidehiko@chromium.org
It looks like using MakeStrongBinding results in the impl being cleaned up when the pipe closes, but not the StrongBinding itself.
Cc: jdufault@chromium.org dats@chromium.org slangley@chromium.org martis@chromium.org
 Issue 899806  has been merged into this issue.
Labels: -Pri-2 Target-72 M-72 Treadstone Pri-1
ping @hidehiko, Drivefs has been failing for a while now.
Sorry, I should have updated this.
crrev.com/c/1240033 should fix the issue.
Cc: -martis@chromium.org
Status: Fixed (was: Assigned)

Sign in to add a comment