Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-71188

Creating many views may trigger release assert on macOS

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.12.0 Beta 3
    • 5.12.0 Beta 2
    • WebEngine
    • None
    • macOS
    • 156c2b70ceef9a4464a5a241c9f816dea4fd3168

    Description

      Create many views as shown in the example ( main.cpp ) may trigger this assert:

      [25159:775:1016/151149.667879:FATAL:layer_tree_host.cc(1105)] Check failed: !has_pushed_local_surface_id_from_parent_ || new_local_surface_id_request_ || !local_surface_id_from_parent_.is_valid(). 
      0   libQt5WebEngineCore.5.dylib         0x000000010cc6d8ec base::debug::StackTrace::StackTrace(unsigned long) + 28
      1   libQt5WebEngineCore.5.dylib         0x000000010cbafe9e logging::LogMessage::~LogMessage() + 206
      2   libQt5WebEngineCore.5.dylib         0x000000010dc71375 cc::LayerTreeHost::SetViewportSizeAndScale(gfx::Size const&, float, viz::LocalSurfaceId const&) + 293
      3   libQt5WebEngineCore.5.dylib         0x000000010fc1bedf content::RenderWidget::UpdateSurfaceAndScreenInfo(viz::LocalSurfaceId const&, gfx::Size const&, content::ScreenInfo const&) + 415
      4   libQt5WebEngineCore.5.dylib         0x000000010fc23c5b content::RenderWidget::SynchronizeVisualProperties(content::VisualProperties const&) + 219
      5   libQt5WebEngineCore.5.dylib         0x000000010fc20f01 content::RenderWidget::OnSynchronizeVisualProperties(content::VisualProperties const&) + 97
      6   libQt5WebEngineCore.5.dylib         0x000000010fc18d2c content::RenderViewImpl::OnSynchronizeVisualProperties(content::VisualProperties const&) + 668
      7   libQt5WebEngineCore.5.dylib         0x000000010fc1cbee bool IPC::MessageT<ViewMsg_SynchronizeVisualProperties_Meta, std::__1::tuple<content::VisualProperties>, void>::Dispatch<content::RenderWidget, content::RenderWidget, void, void (content::RenderWidget::*)(content::VisualProperties const&)>(IPC::Message const*, content::RenderWidget*, content::RenderWidget*, void*, void (content::RenderWidget::*)(content::VisualProperties const&)) + 126
      8   libQt5WebEngineCore.5.dylib         0x000000010fc1c37c content::RenderWidget::OnMessageReceived(IPC::Message const&) + 300
      9   libQt5WebEngineCore.5.dylib         0x000000010fc13685 content::RenderViewImpl::OnMessageReceived(IPC::Message const&) + 1605
      10  libQt5WebEngineCore.5.dylib         0x000000010d50f11b IPC::ChannelProxy::Context::OnDispatchMessage(IPC::Message const&) + 91
      11  libQt5WebEngineCore.5.dylib         0x000000010cb991d3 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) + 291
      12  libQt5WebEngineCore.5.dylib         0x000000010cc1e15f base::sequence_manager::internal::ThreadControllerImpl::DoWork(base::sequence_manager::internal::ThreadControllerImpl::WorkType) + 399
      13  libQt5WebEngineCore.5.dylib         0x000000010cb991d3 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) + 291
      14  libQt5WebEngineCore.5.dylib         0x000000010cbc0a0f base::MessageLoop::RunTask(base::PendingTask*) + 479
      15  libQt5WebEngineCore.5.dylib         0x000000010cbc0f99 base::MessageLoop::DoWork() + 441
      16  libQt5WebEngineCore.5.dylib         0x000000010cc8d98a base::MessagePumpCFRunLoopBase::RunWork() + 42
      17  libQt5WebEngineCore.5.dylib         0x000000010cc915ba base::mac::CallWithEHFrame(void () block_pointer) + 10
      18  libQt5WebEngineCore.5.dylib         0x000000010cc8d26f base::MessagePumpCFRunLoopBase::RunWorkSource(void*) + 63
      19  CoreFoundation                      0x00007fff35d04a11 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
      20  CoreFoundation                      0x00007fff35dbe42c __CFRunLoopDoSource0 + 108
      21  CoreFoundation                      0x00007fff35ce7470 __CFRunLoopDoSources0 + 208
      22  CoreFoundation                      0x00007fff35ce68ed __CFRunLoopRun + 1293
      23  CoreFoundation                      0x00007fff35ce6153 CFRunLoopRunSpecific + 483
      24  Foundation                          0x00007fff37de2f26 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 277
      25  libQt5WebEngineCore.5.dylib         0x000000010cc8e1ee base::MessagePumpNSRunLoop::DoRun(base::MessagePump::Delegate*) + 142
      26  libQt5WebEngineCore.5.dylib         0x000000010cc8ccde base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 110
      27  libQt5WebEngineCore.5.dylib         0x000000010cbec945 base::RunLoop::Run() + 53
      28  libQt5WebEngineCore.5.dylib         0x000000010fc303f6 content::RendererMain(content::MainFunctionParams const&) + 966
      29  libQt5WebEngineCore.5.dylib         0x000000010cb234cf content::ContentMainRunnerImpl::Run(bool) + 447
      30  libQt5WebEngineCore.5.dylib         0x000000010e159051 service_manager::Main(service_manager::MainParams const&) + 2241
      31  libQt5WebEngineCore.5.dylib         0x000000010cb225b4 content::ContentMain(content::ContentMainParams const&) + 68
      32  libQt5WebEngineCore.5.dylib         0x000000010aa90472 QtWebEngine::processMain(int, char const**) + 82
      33  QtWebEngineProcess                  0x0000000103771c47 main + 167
      34  libdyld.dylib                       0x00007fff5db27015 start + 1
      35  ???                                 0x0000000000000011 0x0 + 17
      

      NOTES

      • I could reproduce it with release build only
      • Couldn't reproduce on other platform than macOS
      • My Qt is configured with -developer-build -release that's why I have symbol names
      • Couldn't reproduce with 5.11.2
      • I assume this issue is triggered by the 69-based update
      • seems to be flaky: increasing the number of the views results more likely to fail

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              pvarga Peter Varga
              pvarga Peter Varga
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes