Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. QML QWebEngineView rendering randomly freezes on Wayland
Forum Updated to NodeBB v4.3 + New Features

QML QWebEngineView rendering randomly freezes on Wayland

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
3 Posts 2 Posters 558 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • V Offline
    V Offline
    veodko
    wrote on last edited by
    #1

    I'm running a very basic and simple QWebEngineView in QML on an ARM64/ARMV7 devices running on Wayland (weston). Tested WebEngine versions 5.12.7 and 5.13.2.

    It just displays a website, I used QML to handle stuff such as authenticationRequired events easily etc.
    If the website contains some infinite transition/animation (scrolling text etc) then randomly (sometimes after few minutes sometimes few hours) rendering of the webengine stalls to something like 1 frame every minute. One frame is also updated every time I spawn/close some window in Weston. There is no high CPU usage or anything.

    I caught some detailed log when this happens:

    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=19, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderer time in renderer: total=10ms, preprocess=0, updates=0, binding=0, rendering=10
    2023-06-21T10:37:14 22609 debug-qt.qpa.wayland Received zxdg_toplevel_v6.configure with QSize(0, 0) and QFlags<Qt::WindowState>(WindowNoState)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - polish and sync update request
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop polishAndSync (normal) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:37:14 22663 warning-default QBasicTimer::start: Timers cannot be started from another thread
    2023-06-21T10:37:14 22663 debug-qt.qpa.wayland Applied pending zxdg_toplevel_v6 configure event: QSize(0, 0) QFlags<Qt::WindowState>(WindowNoState)
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 33ms, sync=1, render=10, swap=21 - (on render thread)
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:37:14 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:37:14 22663 debug-qt.quick.dirty    QSGNode: QtWebEngineCore::RenderWidgetHostViewQtDelegateQuick(0x1a96dc8, parent=0x1985940, geometry=0,0 514x1080) Content
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) sceneGraphChanged
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - sync complete, waking Gui
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=22, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop exposureChanged() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop handleExposure() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - render thread already running
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop polishAndSync (in expose) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderer time in renderer: total=12ms, preprocess=0, updates=0, binding=0, rendering=12
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 58ms, sync=1, render=14, swap=43 - (on render thread)
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - triggered from expose
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:37:14 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderer time in renderer: total=14ms, preprocess=0, updates=0, binding=0, rendering=14
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - wake Gui after initial expose
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 40ms, sync=0, render=14, swap=25 - (on render thread)
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) done drawing, sleep...
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEventsAndWaitForMore()
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=93, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - done with handleExposure()
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop exposureChanged() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop handleExposure() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - render thread already running
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop polishAndSync (in expose) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - triggered from expose
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEventsAndWaitForMore()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:37:14 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderer time in renderer: total=9ms, preprocess=0, updates=0, binding=0, rendering=9
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) - wake Gui after initial expose
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 35ms, sync=0, render=9, swap=25 - (on render thread)
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) done drawing, sleep...
    2023-06-21T10:37:14 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEventsAndWaitForMore()
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=36, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop - done with handleExposure()
    2023-06-21T10:37:14 22609 debug-qt.quick.focus QQuickWindowPrivate::clearFocusInScope():
    2023-06-21T10:37:14 22609 debug-qt.quick.focus     scope: QObject(0x0)
    2023-06-21T10:37:14 22609 debug-qt.quick.focus     item: QQuickRootItem(0x196be40)
    2023-06-21T10:37:14 22609 debug-qt.quick.focus     activeFocusItem: QQuickRootItem(0x196be40)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:14 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.qpa.wayland Received zxdg_toplevel_v6.configure with QSize(0, 0) and QFlags<Qt::WindowState>(WindowActive)
    2023-06-21T10:37:51 22609 debug-qt.qpa.wayland Applied pending zxdg_toplevel_v6 configure event: QSize(0, 0) QFlags<Qt::WindowState>(WindowActive)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop exposureChanged() QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop handleExposure() QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - render thread already running
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop polishAndSync (in expose) QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - triggered from expose
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEventsAndWaitForMore()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:37:51 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:37:51 22663 debug-qt.quick.dirty    QSGNode: QtWebEngineCore::RenderWidgetHostViewQtDelegateQuick(0x1a96dc8, parent=0x1985940, geometry=0,0 514x1080) Content
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) sceneGraphChanged
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.time.renderer time in renderer: total=1ms, preprocess=0, updates=0, binding=0, rendering=1
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - wake Gui after initial expose
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 4ms, sync=1, render=1, swap=1 - (on render thread)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=4, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) done drawing, sleep...
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - done with handleExposure()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEventsAndWaitForMore()
    2023-06-21T10:37:51 22609 debug-qt.qpa.wayland Received zxdg_toplevel_v6.configure with QSize(0, 0) and QFlags<Qt::WindowState>(WindowNoState)
    2023-06-21T10:37:51 22609 debug-qt.qpa.wayland Applied pending zxdg_toplevel_v6 configure event: QSize(0, 0) QFlags<Qt::WindowState>(WindowNoState)
    2023-06-21T10:37:51 22609 debug-qt.quick.focus QQuickWindowPrivate::setFocusInScope():
    2023-06-21T10:37:51 22609 debug-qt.quick.focus     scope: QObject(0x0)
    2023-06-21T10:37:51 22609 debug-qt.quick.focus     item: QQuickRootItem(0x196be40)
    2023-06-21T10:37:51 22609 debug-qt.quick.focus     activeFocusItem: QObject(0x0)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop exposureChanged() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop handleExposure() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - render thread already running
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop polishAndSync (in expose) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - triggered from expose
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEventsAndWaitForMore()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:37:51 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.time.renderer time in renderer: total=1ms, preprocess=0, updates=0, binding=0, rendering=1
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) - wake Gui after initial expose
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 9ms, sync=3, render=1, swap=4 - (on render thread)
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) done drawing, sleep...
    2023-06-21T10:37:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEventsAndWaitForMore()
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=22, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop - done with handleExposure()
    2023-06-21T10:37:51 22609 debug-qt.quick.focus QQuickWindowPrivate::clearFocusInScope():
    2023-06-21T10:37:51 22609 debug-qt.quick.focus     scope: QObject(0x0)
    2023-06-21T10:37:51 22609 debug-qt.quick.focus     item: QQuickRootItem(0x196be40)
    2023-06-21T10:37:51 22609 debug-qt.quick.focus     activeFocusItem: QQuickRootItem(0x196be40)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:37:51 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22609 debug-qt.qpa.wayland Received zxdg_toplevel_v6.configure with QSize(0, 0) and QFlags<Qt::WindowState>(WindowActive)
    2023-06-21T10:38:50 22609 debug-qt.qpa.wayland Applied pending zxdg_toplevel_v6 configure event: QSize(0, 0) QFlags<Qt::WindowState>(WindowActive)
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop exposureChanged() QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop handleExposure() QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop - render thread already running
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop polishAndSync (in expose) QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) - triggered from expose
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEventsAndWaitForMore()
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:38:50 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:38:50 22663 debug-qt.quick.dirty    QSGNode: QtWebEngineCore::RenderWidgetHostViewQtDelegateQuick(0x1a96dc8, parent=0x1985940, geometry=0,0 514x1080) Content
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) sceneGraphChanged
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.time.renderer time in renderer: total=1ms, preprocess=0, updates=0, binding=0, rendering=1
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) - wake Gui after initial expose
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 4ms, sync=1, render=2, swap=1 - (on render thread)
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=5, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) done drawing, sleep...
    2023-06-21T10:38:50 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEventsAndWaitForMore()
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop - done with handleExposure()
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:50 22609 debug-qt.quick.focus QQuickWindowPrivate::setFocusInScope():
    2023-06-21T10:38:50 22609 debug-qt.quick.focus     scope: QObject(0x0)
    2023-06-21T10:38:50 22609 debug-qt.quick.focus     item: QQuickRootItem(0x196be40)
    2023-06-21T10:38:50 22609 debug-qt.quick.focus     activeFocusItem: QObject(0x0)
    2023-06-21T10:38:51 22609 debug-qt.qpa.wayland Received zxdg_toplevel_v6.configure with QSize(0, 0) and QFlags<Qt::WindowState>(WindowNoState)
    2023-06-21T10:38:51 22609 debug-qt.qpa.wayland Applied pending zxdg_toplevel_v6 configure event: QSize(0, 0) QFlags<Qt::WindowState>(WindowNoState)
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop exposureChanged() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop handleExposure() QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop - render thread already running
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop polishAndSync (in expose) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop - lock for sync
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop - wait for sync
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) WM_RequestSync
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) - triggered from expose
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEventsAndWaitForMore()
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) syncAndRender()
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) - updatePending, doing sync
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) sync()
    2023-06-21T10:38:51 22663 debug-qt.quick.dirty QQuickWindowPrivate::updateDirtyNodes():
    2023-06-21T10:38:51 22663 debug-qt.quick.dirty    QSGNode: QtWebEngineCore::RenderWidgetHostViewQtDelegateQuick(0x1a96dc8, parent=0x1985940, geometry=0,0 514x1080) Content
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) sceneGraphChanged
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering started
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.time.renderer time in renderer: total=0ms, preprocess=0, updates=0, binding=0, rendering=0
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) - rendering done
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) - wake Gui after initial expose
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.time.renderloop Frame rendered with 'threaded' renderloop in 2ms, sync=1, render=1, swap=0 - (on render thread)
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEvents()
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- done processEvents()
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) done drawing, sleep...
    2023-06-21T10:38:51 22663 debug-qt.scenegraph.renderloop                     (RT) --- begin processEventsAndWaitForMore()
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop - unlock after sync
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.time.renderloop Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=7, animations=0 - (on Gui thread) QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop - done with handleExposure()
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:51 22609 debug-qt.scenegraph.renderloop update from item QQuickWindowQmlImpl_QML_0(0x196cdc0 active exposed, visibility=QWindow::Windowed, flags=QFlags<Qt::WindowType>(FramelessWindowHint), title="WebEngine", geometry=1406,0 514x1080)
    2023-06-21T10:38:51 22609 debug-qt.quick.focus QQuickWindowPrivate::clearFocusInScope():
    2023-06-21T10:38:51 22609 debug-qt.quick.focus     scope: QObject(0x0)
    2023-06-21T10:38:51 22609 debug-qt.quick.focus     item: QQuickRootItem(0x196be40)
    2023-06-21T10:38:51 22609 debug-qt.quick.focus     activeFocusItem: QQuickRootItem(0x196be40)
    2023-06-21T10:39:35 22609 debug-qt.qpa.wayland Received zxdg_toplevel_v6.configure with QSize(0, 0) and QFlags<Qt::WindowState>(WindowActive)
    

    What I noticed, is that this line always appears exactly once, when it starts to freeze (and never more):

    2023-06-21T10:37:14 22663 warning-default QBasicTimer::start: Timers cannot be started from another thread
    

    What's interesting is that I'm not using ANY timer at all in the whole app, I stripped everything down just to a simple view and it still happened.

    However, when I wrote the same app in plain C++ without QML, this doesn't happen at all. It only freezes when using QML to render the window.

    I think this is related to these bugs:
    https://bugreports.qt.io/browse/QTBUG-66075
    https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/843

    And it seems to affect >=5.10 and got fixed in Qt 6, which is not even yet supported fully by Buildroot. Is there any way to fix it or merge the fix back into Qt5?

    1 Reply Last reply
    0
    • V Offline
      V Offline
      veodko
      wrote on last edited by
      #2

      Could someone shine some light onto this issue? Anyone else encountered this?
      I'm still facing it, buildroot still doesn't have any real qt6 support just some base stuff. As a temporary workaround I made a downgrade and dropped QML for plain C++ but it's too hard to achieve the same stuff as I had in QML, I'd rather drop QT altogether and use electron or something else

      T 1 Reply Last reply
      0
      • V veodko

        Could someone shine some light onto this issue? Anyone else encountered this?
        I'm still facing it, buildroot still doesn't have any real qt6 support just some base stuff. As a temporary workaround I made a downgrade and dropped QML for plain C++ but it's too hard to achieve the same stuff as I had in QML, I'd rather drop QT altogether and use electron or something else

        T Offline
        T Offline
        The Qt Mayssa
        wrote on last edited by
        #3

        @veodko said in QML QWebEngineView rendering randomly freezes on Wayland:

        altogether and use electron or s

        Hello ! i'm doing some tests on a Raspberry pi5 that uses Wayland (instead of X11) with Wayfire (instead of Mutter) by default.
        I installed qt5 and tried to run a simple example of qt ( the minimal webengineview example) . I'm having a black screen not even the freez probleme as you do.
        I was wondering if you can share with me the procedure made ( installations and environment variables set ) to make it work.
        Also, any luck with your problem ? Did you commit suicide (yet? 🤦‍♀️🤣 )

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved