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

        1. main.cpp
          0.6 kB
          Peter Varga

        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