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

WebEngine assert with Wayland

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.9.0 Beta2, 6.10.0 FF
    • 6.9
    • WebEngine
    • None
    • Linux/Wayland
    • 297e2e20d (dev), 2f512fafe (6.9)

    Description

      I noticed this with tst_spellchecking but it also happens with simplebrowser. Output and backtrace:

      qt.webenginecontext:
       Chromium GL Backend: angle
       Chromium ANGLE Backend: gl-egl
       Chromium Vulkan Backend: disabled QSG RHI Backend: OpenGL
       QSG RHI Backend Supported: yes
       GPU Vendor: Intel Using GLX: no
       Using EGL: yes
       Using Shared GL: no
       Init Parameters:
        *  application-name simplebrowser
        *  browser-subprocess-path /home/moheim/qt/build/qtbase/libexec/QtWebEngineProcess
        *  disable-blink-features WebOTP
        *  disable-features EyeDropper,AttributionReportingCrossAppWebOverride,BackgroundFetch,InstalledApp,WebOTP,WebPayments,WebUSB
        *  disable-setuid-sandbox
        *  disable-speech-api
        *  enable-features NetworkServiceInProcess2,TracingServiceInProcess
        *  in-process-gpu
        *  touch-events auto
        *  use-angle gl-egl
        *  use-gl angle[1623800:1623800:0107/144626.457450:WARNING:ozone_platform_qt.cpp(215)] Failed to load keymap file, falling back to StubKeyboardLayoutEngine
      INFO: ANGLE DisplayEGL initialized: Mesa Intel(R) Graphics (RPL-S)
      ASSERT: "glFun->glGetError() == GL_NO_ERROR" in file /home/moheim/qt/qt6/qtwebengine/src/core/compositor/native_skia_output_device_opengl.cpp, line 310
      Received signal 6
      #0 0x74ab710daeec base::debug::CollectStackTrace() [gen/base/base_jumbo_44.cc:1043:7]
      #1 0x74ab710a066e base::debug::StackTrace::StackTrace() [./../../../../../../qt6/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.cc:241:20]
      #2 0x74ab710a05fe base::debug::StackTrace::StackTrace() [./../../../../../../qt6/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.cc:236:28]
      #3 0x74ab710da8cb base::debug::(anonymous namespace)::StackDumpSignalHandler() [gen/base/base_jumbo_44.cc:462:3]
      #4 0x74ab53e45250 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x4524f)
      #5 0x74ab53ea3f1c pthread_kill
      #6 0x74ab53e4519e gsignal
      #7 0x74ab53e28902 abort
      #8 0x74ab54a166ad qAbort()
      #9 0x74ab54a5b2b8 qt_message_fatal<>()
      #10 0x74ab54a5441d qt_message()
      #11 0x74ab54a5677d QMessageLogger::fatal()
      #12 0x74ab54a166fb qt_assert()
      #13 0x74ab6420cb63 QtWebEngineCore::NativeSkiaOutputDeviceOpenGL::texture() [/home/moheim/qt/qt6/qtwebengine/src/core/compositor/native_skia_output_device_opengl.cpp:310:5]
      #14 0x74ab64124736 QtWebEngineCore::RenderWidgetHostViewQtDelegateItem::updatePaintNode() [/home/moheim/qt/qt6/qtwebengine/src/core/render_widget_host_view_qt_delegate_item.cpp:397:33]
      #15 0x74ab57f4d2d3 QQuickWindowPrivate::updateDirtyNode()
      #16 0x74ab57f4635f QQuickWindowPrivate::updateDirtyNodes()
      #17 0x74ab57f45e7b QQuickWindowPrivate::syncSceneGraph()
      #18 0x74ab57e7950e QQuickRenderControl::sync()
      #19 0x74ab585d8f12 QQuickWidgetPrivate::render()
      #20 0x74ab585da19b QQuickWidgetPrivate::renderSceneGraph()
      #21 0x74ab585dc25e QQuickWidget::timerEvent()
      #22 0x74ab54bfadc6 QObject::event()
      #23 0x74ab58b4cf2e QWidget::event()
      #24 0x74ab585de051 QQuickWidget::event()
      #25 0x74ab7bbcd18b QtWebEngineCore::WebEngineQuickWidget::event()
      #26 0x74ab58aa1ba0 QApplicationPrivate::notify_helper()
      #27 0x74ab58aa5a6d QApplication::notify()
      #28 0x74ab54b4e279 QCoreApplication::notifyInternal2()
      #29 0x74ab54b4f059 QCoreApplication::sendEvent()
      #30 0x74ab54eb0cdf QTimerInfoList::activateTimers()
      #31 0x74ab550d30f5 timerSourceDispatch()
      #32 0x74ab54510397 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8200.1+0x5f396)
      #33 0x74ab54570dc7 (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8200.1+0xbfdc6)
      #34 0x74ab5450f8b3 g_main_context_iteration
      #35 0x74ab550d1e5b QEventDispatcherGlib::processEvents()
      #36 0x74ab57256d48 QPAEventDispatcherGlib::processEvents()
      #37 0x74ab54b68ad0 QEventLoop::processEvents()
      #38 0x74ab54b68d23 QEventLoop::exec()
      #39 0x74ab54b4ebde QCoreApplication::exec()
      #40 0x74ab569ed8ea QGuiApplication::exec()
      #41 0x74ab58aa2cad QApplication::exec()
      #42 0x610a00b6007a main
      #43 0x74ab53e2a3b8 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x2a3b7)
      #44 0x74ab53e2a47b __libc_start_main
      #45 0x610a00b3c975 _start
        r8: 0000610a07034010  r9: 0000000000000007 r10: 0000000000000008 r11: 0000000000000246
       r12: 0000000000000006 r13: 000074ab550d3080 r14: 0000000000000016 r15: 0000610a07106510
        di: 000000000018c6f8  si: 000000000018c6f8  bp: 00007ffcdb96a6c0  bx: 000000000018c6f8
        dx: 0000000000000006  ax: 0000000000000000  cx: 000074ab53ea3f1c  sp: 00007ffcdb96a680
        ip: 000074ab53ea3f1c efl: 0000000000000246 cgf: 002b000000000033 erf: 0000000000000000
       trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
      [end of stack trace]
      Aborted (core dumped)

      Disabling gl with --webEngineArgs --use-gl=disabled avoids the assert. Replacing the assert with an if, everything seems fine. The error codes returned are 0x502 "Invalid operation" and 0x500 "Invalid enum".

      I bisected the issue to 99837d5568cceb66bb6a634dcf0fffef1473cb14 "Make ANGLE default on Linux". pvarga I wonder if you have any ideas? I may also be able to look into it further too.

      Attachments

        For Gerrit Dashboard: QTBUG-132608
        # Subject Branch Project Status CR V

        Activity

          People

            moheim Moss Heim
            moheim Moss Heim
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes