Engine crashes: :tap_suppression_controller.cc(109)] Check failed: false. Invalid tap end on LAST_CANCEL_STOPPED_FLING state |
||||||||||||
Issue descriptionNavigate to youtube.com. switch to other window and then switch back, and tap the search button in youtube.com. I can not repo this consistently. [29091:29091:0329/152859:FATAL:tap_suppression_controller.cc(109)] Check failed: false. Invalid tap end on LAST_CANCEL_STOPPED_FLING state #0 0x7f84a7c5905e base::debug::StackTrace::StackTrace() #1 0x7f84a7cb98df logging::LogMessage::~LogMessage() #2 0x7f84a477c48b content::TapSuppressionController::ShouldSuppressTapEnd() #3 0x7f84a478fd20 content::TouchscreenTapSuppressionController::FilterTapEvent() #4 0x7f84a474e85a content::GestureEventQueue::ShouldForwardForTapSuppression() #5 0x7f84a474e4c8 content::GestureEventQueue::QueueEvent() #6 0x7f84a47573d7 content::InputRouterImpl::SendGestureEvent() #7 0x7f84a488ad27 content::RenderWidgetHostImpl::ForwardGestureEventWithLatencyInfo() #8 0x7f84a488a83b content::RenderWidgetHostImpl::ForwardGestureEvent() #9 0x000000430498 blimp::engine::BlimpEngineSession::OnWebGestureEvent() #10 0x00000043982f blimp::EngineRenderWidgetFeature::ProcessMessage() #11 0x7f84a940ae8d blimp::(anonymous namespace)::DispatchProcessMessage() #12 0x7f84a940cdb7 _ZN4base8internal15RunnableAdapterIPFvNS_7WeakPtrIN5blimp22BlimpMessageThreadPipeEEESt10unique_ptrINS3_12BlimpMessageESt14default_deleteIS7_EERKNS_8CallbackIFviELNS0_8CopyModeE1EEEEE3RunIJRKS5_SA_SG_EEEvDpOT_ #13 0x7f84a940ccaf _ZN4base8internal12InvokeHelperILb0EvNS0_15RunnableAdapterIPFvNS_7WeakPtrIN5blimp22BlimpMessageThreadPipeEEESt10unique_ptrINS4_12BlimpMessageESt14default_deleteIS8_EERKNS_8CallbackIFviELNS0_8CopyModeE1EEEEEEE8MakeItSoIJRKS6_SB_SH_EEEvSK_DpOT_ #14 0x7f84a940cc4e _ZN4base8internal7InvokerINS_13IndexSequenceIJLm0ELm1ELm2EEEENS0_9BindStateINS0_15RunnableAdapterIPFvNS_7WeakPtrIN5blimp22BlimpMessageThreadPipeEEESt10unique_ptrINS7_12BlimpMessageESt14default_deleteISB_EERKNS_8CallbackIFviELNS0_8CopyModeE1EEEEEESL_JRS9_NS0_13PassedWrapperISE_EERSI_EEENS0_12InvokeHelperILb0EvSN_EEFvvEE3RunEPNS0_13BindStateBaseE #15 0x7f84a7c3943e base::Callback<>::Run() #16 0x7f84a7c5ea4e base::debug::TaskAnnotator::RunTask() #17 0x7f84a7cd674f base::MessageLoop::RunTask() #18 0x7f84a7cd69d8 base::MessageLoop::DeferOrRunPendingTask() #19 0x7f84a7cd6ba2 base::MessageLoop::DoWork() #20 0x7f84a7cea27e base::MessagePumpLibevent::Run() #21 0x7f84a7cd617f base::MessageLoop::RunHandler() #22 0x7f84a7d74aa4 base::RunLoop::Run() #23 0x7f84a40ea666 content::BrowserMainLoop::MainMessageLoopRun() #24 0x7f84a40ea3c1 content::BrowserMainLoop::RunMainMessageLoopParts() #25 0x7f84a40f3115 content::BrowserMainRunnerImpl::Run() #26 0x7f84a40e42e6 content::BrowserMain() #27 0x7f84a5c1a0b6 content::RunNamedProcessTypeMain() #28 0x7f84a5c1bf99 content::ContentMainRunnerImpl::Run() #29 0x7f84a5c19532 content::ContentMain() #30 0x000000415e65 main #31 0x7f849d3caec5 __libc_start_main #32 0x000000415d49 <unknown>
,
Mar 31 2016
IIUC the Android client is generating a sequence of gesture events w/ tap-suppression already applied by the framework, that the Aura-oriented suppression code is confused by. Can you check what sequence repros this?
,
Mar 31 2016
,
Apr 1 2016
I can not repo it any more. Reduce the priority and keep this bug open.
,
Apr 4 2016
,
Apr 4 2016
I doubt that this is due to the difference between the Android and Aura gesture configurations, but blimp should definitely use the Android gesture configuration. I suspect that there's some timing related issue that we're hitting in blimp, that would be possible without blimp, it's just far rarer. Touchscreen tap suppression is enabled on Android and Aura, it's only touchpad tap suppression that's disabled on Android. Dumping the set of Gesture events seen would make this easier to understand.
,
Apr 4 2016
,
Apr 4 2016
,
Apr 5 2016
Another thing we are doing differently for blimp is that the RWH doesn't get the complete stream of gesture events. The filtered gesture provider for android is on the client and sends the events to the compositor thread. If the event can not be handled by the compositor, then it is sent to the engine which forwards it to the RWH to send to the main thread. If there are any components in the RWH or further in the input pipeline in the browser that make assumptions on seeing the complete stream of events, then they could throw an error.
,
Apr 5 2016
,
Apr 13 2016
,
May 12 2016
Issue 611249 has been merged into this issue.
,
May 12 2016
related crbug.com/611590
,
May 13 2016
Finally got a list of Gesture events that leads to the crash. [11672:11672:0513/103822:ERROR:blimp_engine_session.cc(412)] GestureTap 17 [11672:11672:0513/103822:ERROR:touchscreen_tap_suppression_controller.cc(55)] WebInputEvent::GestureTap [11672:11672:0513/103823:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103823:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103823:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103823:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103823:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103823:ERROR:blimp_engine_session.cc(415)] GestureFlingCancel 15 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(415)] GestureFlingCancel 15 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(415)] GestureFlingCancel 15 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103826:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(415)] GestureFlingCancel 15 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103827:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103828:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103829:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103829:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103829:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103829:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(415)] GestureFlingCancel 15 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(403)] GestureScrollBegin 11 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(418)] GestureScrollUpdate 13 [11672:11672:0513/103831:ERROR:blimp_engine_session.cc(409)] GestureFlingStart 14 [11672:11672:0513/103832:ERROR:blimp_engine_session.cc(412)] GestureTap 17 [11672:11672:0513/103832:ERROR:touchscreen_tap_suppression_controller.cc(55)] WebInputEvent::GestureTap [11672:11672:0513/103832:FATAL:tap_suppression_controller.cc(109)] Check failed: false. Invalid tap end on LAST_CANCEL_STOPPED_FLING state #0 0x7f974a9ccc6e base::debug::StackTrace::StackTrace() #1 0x7f974a9ed34b logging::LogMessage::~LogMessage() #2 0x7f9749a9c59b content::TapSuppressionController::ShouldSuppressTapEnd() #3 0x7f9749aa3b8f content::TouchscreenTapSuppressionController::FilterTapEvent() #4 0x7f9749a8b826 content::GestureEventQueue::QueueEvent() #5 0x7f9749a8f9e2 content::InputRouterImpl::SendGestureEvent() #6 0x7f9749b04a9e content::RenderWidgetHostImpl::ForwardGestureEventWithLatencyInfo() #7 0x7f9749b047c8 content::RenderWidgetHostImpl::ForwardGestureEvent() #8 0x0000004c2c33 blimp::engine::BlimpEngineSession::OnWebGestureEvent() #9 0x0000004c6536 blimp::engine::EngineRenderWidgetFeature::ProcessMessage() #10 0x7f974a8d8faa blimp::(anonymous namespace)::DispatchProcessMessage() #11 0x7f974a8d9235 _ZN4base8internal7InvokerINS_13IndexSequenceIJLm0ELm1ELm2EEEENS0_9BindStateINS0_15RunnableAdapterIPFvNS_7WeakPtrIN5blimp22BlimpMessageThreadPipeEEESt10unique_ptrINS7_12BlimpMessageESt14default_deleteISB_EERKNS_8CallbackIFviELNS0_8CopyModeE1EEEEEESL_JRS9_NS0_13PassedWrapperISE_EERSI_EEENS0_12InvokeHelperILb0EvSN_EEFvvEE3RunEPNS0_13BindStateBaseE #12 0x7f974a9cde79 base::debug::TaskAnnotator::RunTask() #13 0x7f974a9f7aa5 base::MessageLoop::RunTask() #14 0x7f974a9f7dd8 base::MessageLoop::DeferOrRunPendingTask() #15 0x7f974a9f816b base::MessageLoop::DoWork() #16 0x7f974a9faa89 base::MessagePumpLibevent::Run() #17 0x7f974a9f75d1 base::MessageLoop::RunHandler() #18 0x7f974aa25aa0 base::RunLoop::Run() #19 0x7f974984b708 content::BrowserMainLoop::MainMessageLoopRun() #20 0x7f974984b4e5 content::BrowserMainLoop::RunMainMessageLoopParts() #21 0x7f974984e068 content::BrowserMainRunnerImpl::Run() #22 0x7f9749846d8c content::BrowserMain() #23 0x7f974a1e9d9b content::RunNamedProcessTypeMain() #24 0x7f974a1ea813 content::ContentMainRunnerImpl::Run() #25 0x7f974a1e90f0 content::ContentMain() #26 0x00000041a60b main #27 0x7f9746f7aec5 __libc_start_main #28 0x00000041a4f5 <unknown>
,
May 16 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d101e6286d62003088249577e5f931c335f6d060 commit d101e6286d62003088249577e5f931c335f6d060 Author: haibinlu <haibinlu@chromium.org> Date: Mon May 16 21:30:23 2016 Client sends tapDown TapCancel TapUnconfirmed and showPress gesture events. These events are used in content browser side gesture handling logic to update internal state or state machine, such as in render_widget_host_impl and tap_suppression_controller. BUG= 598876 , 611590 Review-Url: https://codereview.chromium.org/1975213003 Cr-Commit-Position: refs/heads/master@{#393933} [modify] https://crrev.com/d101e6286d62003088249577e5f931c335f6d060/blimp/common/proto/input.proto [modify] https://crrev.com/d101e6286d62003088249577e5f931c335f6d060/blimp/engine/session/blimp_engine_session.cc [modify] https://crrev.com/d101e6286d62003088249577e5f931c335f6d060/blimp/net/input_message_converter.cc [modify] https://crrev.com/d101e6286d62003088249577e5f931c335f6d060/blimp/net/input_message_generator.cc [modify] https://crrev.com/d101e6286d62003088249577e5f931c335f6d060/blimp/net/input_message_unittest.cc
,
May 16 2016
,
Dec 9 2016
|
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by haibinlu@chromium.org
, Mar 31 2016