[Android] CustomTabsConnectionTest DCHECKs out establishing GPU channel Mojo connection |
|||||||||
Issue descriptionCQ run failed on an Android builder (my changes are ifdef's out on android): https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/442115 chrome_public_test_apk (with patch) on Android chrome_public_test_apk (with patch) on Android: org.chromium.chrome.browser.customtabs.CustomTabsConnectionTest#testMultipleMayLaunchUrl org.chromium.chrome.browser.customtabs.CustomTabsConnectionTest#testThrottlingIsReset Log files are blank for some reason.
,
Nov 30 2017
& re "log files are blank" -- from the build step, if you drill into result_details, you can see some of the other output streams we have for these tests (e.g. the symbolized tombstone: https://luci-logdog.appspot.com/v/?s=chromium%2Fandroid%2Fswarming%2Flogcats%2F3a2473928a22bd11%2F%2B%2Ftombstones_tombstones_20171130T064018-UTC_03d13138006aff5e)
,
Nov 30 2017
the stack trace is not really informative, looks like flake in the mojo channel, nothing CCT-related: 009ec62d mojo::(anonymous namespace)::DCheckIfInvalid(base::WeakPtr<mojo::InterfaceEndpointClient> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)+60 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:32 00d5551d ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder::~Gpu_EstablishGpuChannel_ProxyToResponder()+28 /b/c/b/linux_android_rel_ng/src/out/Release/gen/services/ui/public/interfaces/gpu.mojom.cc:261 v------> std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder>::operator()(ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder*) const /b/c/b/linux_android_rel_ng/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory:2431 v------> std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> >::reset(ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder*) /b/c/b/linux_android_rel_ng/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory:2630 v------> std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> >::~unique_ptr() /b/c/b/linux_android_rel_ng/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory:2598 00d553a9 base::internal::PassedWrapper<std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> > >::~PassedWrapper()+12 /b/c/b/linux_android_rel_ng/src/base/bind_helpers.h:267 v------> std::__ndk1::__tuple_leaf<0u, base::internal::PassedWrapper<std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> > >, false>::~__tuple_leaf() /b/c/b/linux_android_rel_ng/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/tuple:180 v------> std::__ndk1::tuple<base::internal::PassedWrapper<std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> > > >::~tuple() /b/c/b/linux_android_rel_ng/src/third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/tuple:486 00d554f3 base::internal::BindState<void (ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder::*)(int, mojo::ScopedHandleBase<mojo::MessagePipeHandle>, gpu::GPUInfo const&, gpu::GpuFeatureInfo const&), base::internal::PassedWrapper<std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> > > >::~BindState()+8 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:471 00d554dd base::internal::BindState<void (ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder::*)(int, mojo::ScopedHandleBase<mojo::MessagePipeHandle>, gpu::GPUInfo const&, gpu::GpuFeatureInfo const&), base::internal::PassedWrapper<std::__ndk1::unique_ptr<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder, std::__ndk1::default_delete<ui::mojom::Gpu_EstablishGpuChannel_ProxyToResponder> > > >::Destroy(base::internal::BindStateBase const*)+4 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:474 01109cdf content::GpuClient::OnError()+10 /b/c/b/linux_android_rel_ng/src/content/browser/gpu/gpu_client.cc:34 0110a459 void base::internal::Invoker<base::internal::BindState<void (content::GpuClient::*)(), base::internal::UnretainedWrapper<content::GpuClient> >, void ()>::RunImpl<void (content::GpuClient::* const&)(), std::__ndk1::tuple<base::internal::UnretainedWrapper<content::GpuClient> > const&, 0u>(void (content::GpuClient::* const&)(), std::__ndk1::tuple<base::internal::UnretainedWrapper<content::GpuClient> > const&, std::__ndk1::integer_sequence<unsigned int, 0u>)+10 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:351 0110a8a9 mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::OnConnectionError(unsigned int, unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)+96 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/binding_set.h:301 009f69e3 void base::internal::InvokeHelper<false, void>::MakeItSo<void (WebRtcLogUploader::*)(net::URLFetcher*, WebRtcLogUploadDoneData const&), WebRtcLogUploader*, net::URLFetcher*, WebRtcLogUploadDoneData>(void (WebRtcLogUploader::*&&)(net::URLFetcher*, WebRtcLogUploadDoneData const&), WebRtcLogUploader*&&, net::URLFetcher*&&, WebRtcLogUploadDoneData&&)+18 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:277 0110a843 void base::internal::Invoker<base::internal::BindState<void (mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry::*)(unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&), base::internal::UnretainedWrapper<mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry> >, void (unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)>::RunImpl<void (mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry::*)(unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&), std::__ndk1::tuple<base::internal::UnretainedWrapper<mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry> >, 0u>(void (mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry::*&&)(unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&), std::__ndk1::tuple<base::internal::UnretainedWrapper<mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry> >&&, std::__ndk1::integer_sequence<unsigned int, 0u>, unsigned int&&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)+8 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:351 0110a835 base::internal::Invoker<base::internal::BindState<void (mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry::*)(unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&), base::internal::UnretainedWrapper<mojo::BindingSetBase<ui::mojom::Gpu, mojo::Binding<ui::mojom::Gpu, mojo::RawPtrImplRefTraits<ui::mojom::Gpu> >, void>::Entry> >, void (unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)>::RunOnce(base::internal::BindStateBase*, unsigned int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)+20 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:319 009ebced base::OnceCallback<void (scoped_refptr<net::IOBuffer>, std::__ndk1::vector<device::UsbDeviceHandle::IsochronousPacket, std::__ndk1::allocator<device::UsbDeviceHandle::IsochronousPacket> > const&)>::Run(scoped_refptr<net::IOBuffer>, std::__ndk1::vector<device::UsbDeviceHandle::IsochronousPacket, std::__ndk1::allocator<device::UsbDeviceHandle::IsochronousPacket> > const&) &&+28 /b/c/b/linux_android_rel_ng/src/base/callback.h:65 009ebca3 mojo::InterfaceEndpointClient::NotifyError(base::Optional<mojo::DisconnectReason> const&)+130 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:331 009eff61 mojo::internal::MultiplexRouter::ProcessNotifyErrorTask(mojo::internal::MultiplexRouter::Task*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*)+212 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/lib/multiplex_router.cc:800 009eef51 mojo::internal::MultiplexRouter::ProcessTasks(mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*)+208 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/lib/multiplex_router.cc:713 009ee7d5 mojo::internal::MultiplexRouter::OnPipeConnectionError()+284 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/lib/multiplex_router.cc:682 009f0987 void base::internal::Invoker<base::internal::BindState<void (mojo::internal::MultiplexRouter::*)(), base::internal::UnretainedWrapper<mojo::internal::MultiplexRouter> >, void ()>::RunImpl<void (mojo::internal::MultiplexRouter::* const&)(), std::__ndk1::tuple<base::internal::UnretainedWrapper<mojo::internal::MultiplexRouter> > const&, 0u>(void (mojo::internal::MultiplexRouter::* const&)(), std::__ndk1::tuple<base::internal::UnretainedWrapper<mojo::internal::MultiplexRouter> > const&, std::__ndk1::integer_sequence<unsigned int, 0u>)+8 /b/c/b/linux_android_rel_ng/src/base/bind_internal.h:351 0034e857 base::OnceCallback<void ()>::Run() &&+54 /b/c/b/linux_android_rel_ng/src/base/callback.h:65 009e9633 mojo::Connector::HandleError(bool, bool)+142 /b/c/b/linux_android_rel_ng/src/mojo/public/cpp/bindings/lib/connector.cc:534 009e9c77 mojo::Connector::OnHandleReadyInternal(unsigned int)+66 +folks, maybe they have an idea how to triage such much
,
Nov 30 2017
#1: Thanks, I'll respond on the thread about documentation for that. (I filed this bug before the chromium-dev thread.)
,
Dec 1 2017
Rob, could you triage this bug, which at a glance looks like a problem somewhere within Viz/the GPU service? Thanks!
,
Dec 1 2017
CC'ing a couple other folks who might be knowledgeable here as well.
,
Dec 1 2017
,
Dec 1 2017
,
Dec 1 2017
I think it's zmo@'s change, which originally caused this crash, and was reverted [1]. The CL relanded with a fix [2] [1] https://bugs.chromium.org/p/chromium/issues/detail?id=783512#c3 [2] https://bugs.chromium.org/p/chromium/issues/detail?id=783512#c14
,
Dec 1 2017
(i.e. this should already be fixed)
,
Dec 1 2017
Thanks sadrul@ |
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by jbudorick@chromium.org
, Nov 30 2017Labels: -Infra-Troopers