Details
-
Bug
-
Resolution: Unresolved
-
P4: Low
-
None
-
6.9
-
None
Description
running some qtmultimedia examples on a rock-5c board (boot2qt build with meta-rockchip) crashes on some qtmm examples
crashing:
- videowidget
- player
- camera
- mediaplayerapp
not crashing:
- spectrum
- audiorecorder
- videographicsitem
crash occurs on the main thread in libmali after wl_compositor@4.create_surface. unfortunately there seems to be a stack corruption, so the backtrace is not very helpful
[1606798.333] wl_display@1.delete_id(19) [1606798.366] wl_registry@18.global(1, "wl_compositor", 5) [1606798.381] wl_registry@18.global(2, "wl_subcompositor", 1) [1606798.393] wl_registry@18.global(3, "wp_viewporter", 1) [1606798.404] wl_registry@18.global(4, "zxdg_output_manager_v1", 2) [1606798.415] wl_registry@18.global(5, "wp_presentation", 1) [1606798.426] wl_registry@18.global(6, "wp_single_pixel_buffer_manager_v1", 1) [1606798.436] wl_registry@18.global(7, "wp_tearing_control_manager_v1", 1) [1606798.455] wl_registry@18.global(8, "zwp_relative_pointer_manager_v1", 1) [1606798.477] wl_registry@18.global(9, "zwp_pointer_constraints_v1", 1) [1606798.493] wl_registry@18.global(10, "zwp_input_timestamps_manager_v1", 1) [1606798.508] wl_registry@18.global(11, "weston_capture_v1", 1) [1606798.524] wl_registry@18.global(12, "wl_data_device_manager", 3) [1606798.539] wl_registry@18.global(13, "wl_shm", 1) [1606798.554] wl_registry@18.global(14, "mali_buffer_sharing", 5) [1606798.581] -> wl_registry@18.bind(14, "mali_buffer_sharing", 5, new id [unknown]@20) [1606798.601] wl_registry@18.global(15, "wl_seat", 7) [1606798.617] wl_registry@18.global(16, "zwp_linux_dmabuf_v1", 3) [1606798.632] wl_registry@18.global(17, "weston_direct_display_v1", 1) [1606798.647] wl_registry@18.global(18, "weston_content_protection", 1) [1606798.661] wl_registry@18.global(19, "zwp_input_panel_v1", 1) [1606798.676] wl_registry@18.global(20, "zwp_input_method_v1", 1) [1606798.691] wl_registry@18.global(21, "zwp_text_input_manager_v1", 1) [1606798.706] wl_registry@18.global(22, "xdg_wm_base", 5) [1606798.721] wl_registry@18.global(23, "weston_desktop_shell", 1) [1606798.736] wl_registry@18.global(24, "wl_output", 4) [1606798.750] wl_callback@19.done(741) [1606798.782] -> wl_display@1.sync(new id wl_callback@21) [1606799.091] wl_display@1.delete_id(21) [1606799.126] mali_buffer_sharing@20.alloc_device("display-subsystem") [1606799.267] wl_callback@21.done(741) [1606799.308] -> mali_buffer_sharing@20.auth(2) [1606799.322] -> wl_display@1.sync(new id wl_callback@22) [1606799.629] wl_display@1.delete_id(22) [1606799.660] wl_callback@22.done(741) warning: queue 0x5555653b10 destroyed while proxies still attached: wl_callback@22 still attached wl_callback@21 still attached mali_buffer_sharing@20 still attached wl_callback@19 still attached [1607004.758] -> wl_compositor@4.create_surface(new id wl_surface@23) [1607044.588] -> wl_compositor@4.create_surface(new id wl_surface@24) [1607044.769] -> wl_surface@24.attach(nil, 0, 0) [1607044.787] -> wl_surface@24.commit() [1607044.814] -> wl_subcompositor@5.get_subsurface(new id wl_subsurface@25, wl_surface@24, wl_surface@23) [1607044.859] -> wl_subsurface@25.set_desync() [1607044.881] -> wl_surface@24.set_buffer_scale(1) [1607044.912] -> wl_compositor@4.create_region(new id wl_region@26) [1607044.936] -> wl_surface@24.set_input_region(wl_region@26) [1607044.948] -> wl_region@26.destroy() [1607044.969] -> wl_subsurface@25.set_position(11, 11) [1607044.990] -> wl_surface@24.set_buffer_transform(0) [1607045.002] -> wl_surface@24.commit() [1607045.014] -> wl_subsurface@25.set_position(11, 11) [1607045.059] -> wl_compositor@4.create_region(new id wl_region@27) [1607045.073] -> wl_region@27.add(0, 0, 618, 468) [1607045.087] -> wl_surface@24.set_opaque_region(wl_region@27) [1607045.111] -> wl_region@27.destroy() [1607045.712] -> wl_surface@23.attach(nil, 0, 0) [1607045.742] -> wl_surface@23.commit() [1607045.772] -> xdg_wm_base@3.get_xdg_surface(new id xdg_surface@28, wl_surface@23) [1607045.796] -> xdg_surface@28.get_toplevel(new id xdg_toplevel@29) [1607045.821] -> xdg_toplevel@29.set_min_size(157, 72) [1607045.833] -> xdg_toplevel@29.set_max_size(0, 0) [1607045.864] -> xdg_toplevel@29.set_title("Video Widget Example") [1607045.922] -> xdg_toplevel@29.set_app_id("videowidget") [1607045.954] -> wl_surface@23.set_buffer_scale(1) [1607094.952] -> wl_subsurface@25.set_position(14, 41) [1607095.122] -> wl_compositor@4.create_region(new id wl_region@30) [1607095.153] -> wl_region@30.add(3, 30, 640, 540) [1607095.173] -> wl_surface@23.set_opaque_region(wl_region@30) [1607095.188] -> wl_region@30.destroy() [1607095.218] -> xdg_toplevel@29.set_min_size(163, 105) [1607095.254] -> xdg_toplevel@29.set_max_size(16777221, 16777248) [1607095.395] -> wl_surface@23.set_buffer_transform(0) [1607095.423] -> wl_surface@23.commit() [1607095.717] wl_keyboard@16.repeat_info(40, 400) [1607095.762] wl_keyboard@16.keymap(1, fd 13, 64756) [1607110.218] wl_display@1.delete_id(26) [1607110.258] wl_display@1.delete_id(27) [1607110.272] wl_display@1.delete_id(30) [1607110.737] xdg_toplevel@29.wm_capabilities(array[12]) [1607110.777] xdg_toplevel@29.configure(0, 0, array[0]) [1607110.798] xdg_surface@28.configure(742) [1607110.866] -> xdg_surface@28.ack_configure(742) [1607110.901] -> xdg_surface@28.set_window_geometry(0, 0, 646, 573) [1607111.243] -> wl_shm@9.create_pool(new id wl_shm_pool@30, fd 22, 1480632) [1607111.282] -> wl_shm_pool@30.create_buffer(new id wl_buffer@27, 0, 646, 573, 2584, 0) [1607125.957] -> wl_surface@23.damage_buffer(0, 0, 646, 30) [1607126.050] -> wl_surface@23.damage_buffer(0, 30, 3, 540) [1607126.074] -> wl_surface@23.damage_buffer(643, 30, 3, 540) [1607126.095] -> wl_surface@23.damage_buffer(0, 570, 646, 3) [1607126.154] -> wl_surface@23.damage_buffer(0, 573, 3, 30) [1607126.485] -> wl_surface@23.frame(new id wl_callback@26) [1607126.555] -> wl_surface@23.offset(0, 0) [1607126.575] -> wl_surface@23.attach(wl_buffer@27, 0, 0) [1607126.598] -> wl_surface@23.damage_buffer(3, 30, 640, 540) [1607126.631] -> wl_surface@23.commit() [1607154.119] -> wl_compositor@4.create_surface(new id wl_surface@31) Thread 1 "videowidget" received signal SIGSEGV, Segmentation fault. 0x0000007fee38ae34 in wl_list_insert () from /usr/lib/libwayland-client.so.0 (gdb) thread apply all bt Thread 8 (Thread 0x7fd8b9efc0 (LWP 2249) "mali-cpu-comman"): #0 0x0000007ff619d7b4 in ?? () from /usr/lib/libc.so.6 #1 0x0000007ff61a9430 in ?? () from /usr/lib/libc.so.6 #2 0x0000007fef70f580 in gles_vertexp_bb_neon_transform_and_produce_clip_bits () from /usr/lib/libmali.so.1 Backtrace stopped: previous frame identical to this frame (corrupt stack?) Thread 7 (Thread 0x7fd93aefc0 (LWP 2248) "mali-mem-purge"): #0 0x0000007ff61d617c in clock_nanosleep () from /usr/lib/libc.so.6 #1 0x0000007ff61df680 in nanosleep () from /usr/lib/libc.so.6 #2 0x0000007ff6202d0c in usleep () from /usr/lib/libc.so.6 #3 0x0000007fef70832c in gles_vertexp_bb_neon_transform_and_produce_clip_bits () from /usr/lib/libmali.so.1 Backtrace stopped: previous frame identical to this frame (corrupt stack?) Thread 6 (Thread 0x7fd9bbefc0 (LWP 2247) "mali-event-hand"): #0 0x0000007ff61f92ac in poll () from /usr/lib/libc.so.6 #1 0x0000007fef70be9c in gles_vertexp_bb_neon_transform_and_produce_clip_bits () from /usr/lib/libmali.so.1 Backtrace stopped: previous frame identical to this frame (corrupt stack?) Thread 5 (Thread 0x7fda3cefc0 (LWP 2246) "QPulseAudioEngi"): #0 0x0000007ff61f92ac in poll () from /usr/lib/libc.so.6 #1 0x0000007ff5da7194 in ?? () from /usr/lib/libpulse.so.0 #2 0x0000007ff5d97f08 in pa_mainloop_poll () from /usr/lib/libpulse.so.0 #3 0x0000007ff5d98664 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0 #4 0x0000007ff5d98738 in pa_mainloop_run () from /usr/lib/libpulse.so.0 #5 0x0000007ff5da7278 in ?? () from /usr/lib/libpulse.so.0 #6 0x0000007fee5ff82c in ?? () from /usr/lib/pulseaudio/libpulsecommon-17.0.so #7 0x0000007ff61a0fc4 in ?? () from /usr/lib/libc.so.6 #8 0x0000007ff62031cc in ?? () from /usr/lib/libc.so.6 Thread 4 (Thread 0x7feacdefc0 (LWP 2245) "WaylandEventThr"): #0 0x0000007ff61f92ac in poll () from /usr/lib/libc.so.6 #1 0x0000007febe10108 in poll (__timeout=-1, __nfds=2, __fds=0x7feacde5f8) at /usr/include/bits/poll2.h:39 #2 QtWaylandClient::EventThread::run (this=0x55555bf6c0) at /usr/src/debug/qtwayland/6.9.0/src/client/qwaylanddisplay.cpp:182 #3 0x0000007ff68a7914 in operator() (__closure=__closure@entry=0x7feacde6e0) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:335 #4 0x0000007ff68a7a54 in (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >(struct {...} &&) (t=...) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:263 #5 0x0000007ff68a7afc in QThreadPrivate::start (arg=<optimized out>) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:294 #6 0x0000007ff61a0fc4 in ?? () from /usr/lib/libc.so.6 #7 0x0000007ff62031cc in ?? () from /usr/lib/libc.so.6 Thread 3 (Thread 0x7feb4eefc0 (LWP 2244) "WaylandEventThr"): #0 0x0000007ff61f92ac in poll () from /usr/lib/libc.so.6 #1 0x0000007febe10108 in poll (__timeout=-1, __nfds=2, __fds=0x7feb4ee5f8) at /usr/include/bits/poll2.h:39 #2 QtWaylandClient::EventThread::run (this=0x55555be850) at /usr/src/debug/qtwayland/6.9.0/src/client/qwaylanddisplay.cpp:182 #3 0x0000007ff68a7914 in operator() (__closure=__closure@entry=0x7feb4ee6e0) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:335 #4 0x0000007ff68a7a54 in (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >(struct {...} &&) (t=...) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:263 #5 0x0000007ff68a7afc in QThreadPrivate::start (arg=<optimized out>) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:294 #6 0x0000007ff61a0fc4 in ?? () from /usr/lib/libc.so.6 #7 0x0000007ff62031cc in ?? () from /usr/lib/libc.so.6 Thread 2 (Thread 0x7febd4efc0 (LWP 2243) "QDBusConnection"): #0 0x0000007ff61f92ac in poll () from /usr/lib/libc.so.6 #1 0x0000007ff5bed2c0 in ?? () from /usr/lib/libglib-2.0.so.0 #2 0x0000007ff5bedae8 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #3 0x0000007ff69bd668 in QEventDispatcherGlib::processEvents (this=0x7fe4000ba0, flags=...) at /usr/src/debug/qtbase/6.9.0/src/corelib/kernel/qeventdispatcher_glib.cpp:399 #4 0x0000007ff670ddd8 in QEventLoop::processEvents (this=this@entry=0x7febd4e598, flags=flags@entry=...) at /usr/src/debug/qtbase/6.9.0/src/corelib/kernel/qeventloop.cpp:103 #5 0x0000007ff670e698 in QEventLoop::exec (this=this@entry=0x7febd4e598, flags=flags@entry=...) at /usr/src/debug/qtbase/6.9.0/src/corelib/global/qflags.h:77 #6 0x0000007ff6811694 in QThread::exec (this=this@entry=0x7ff5b81940 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qtbase/6.9.0/src/corelib/global/qflags.h:77 #7 0x0000007ff5ab1888 in QDBusConnectionManager::run (this=0x7ff5b81940 <QGlobalStatic<QtGlobalStatic::Holder<(anonymous namespace)::Q_QGS__q_manager> >::instance()::holder>) at /usr/src/debug/qtbase/6.9.0/src/dbus/qdbusconnectionmanager.cpp:144 #8 0x0000007ff68a7914 in operator() (__closure=__closure@entry=0x7febd4e6e0) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:335 #9 0x0000007ff68a7a54 in (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >(struct {...} &&) (t=...) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:263 #10 0x0000007ff68a7afc in QThreadPrivate::start (arg=<optimized out>) at /usr/src/debug/qtbase/6.9.0/src/corelib/thread/qthread_unix.cpp:294 #11 0x0000007ff61a0fc4 in ?? () from /usr/lib/libc.so.6 #12 0x0000007ff62031cc in ?? () from /usr/lib/libc.so.6 Thread 1 (Thread 0x7ff7fb4460 (LWP 2241) "videowidget"): #0 0x0000007fee38ae34 in wl_list_insert () from /usr/lib/libwayland-client.so.0 #1 0x0000007fee387fc4 in wl_proxy_create_wrapper () from /usr/lib/libwayland-client.so.0 #2 0x0000007fef59c914 in ?? () from /usr/lib/libmali.so.1 #3 0x00000055556ef7e0 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?)
Attachments
Issue Links
- is duplicated by
-
QTBUG-131284 The QML video example crashes when running fullscreen mode for the video and getting back to the main app view
- Reported
- relates to
-
QTBUG-131107 QVideoFrame::toImage / qImageFromVideoFrame not safe to call from worker thread
- Reported
Gerrit Reviews
For Gerrit Dashboard: QTBUG-130970 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
604086,8 | GStreamer: Image capture - fix QVideoFrame conversion | dev | qt/qtmultimedia | Status: NEW | 0 | 0 |