RESOLVED FIXED 280334
REGRESSION(284072@main): [GStreamer] A lot of media tests crash with Assertion "SHOULD NEVER BE REACHED"
https://bugs.webkit.org/show_bug.cgi?id=280334
Summary REGRESSION(284072@main): [GStreamer] A lot of media tests crash with Assertio...
zsun
Reported 2024-09-25 05:46:02 PDT
Thread 1 (LWP 975952): #0 0x00007f1a13c69494 in ?? () Backtrace stopped: Cannot access memory at address 0x7ffeb75ee488 STDERR: webkitpy.common.system.logutils: [DEBUG] Debug logging enabled. STDERR: flatpakutils: [DEBUG] Using flatpak user dir: /home/ziran/WebKit/WebKitBuild/UserFlatpak STDERR: flatpakutils: [DEBUG] Building WPE port in /home/ziran/WebKit/WebKitBuild/WPE/Release STDERR: flatpakutils: [DEBUG] Running flatpak --version STDERR: flatpakutils: [DEBUG] Running flatpak remote-list --help STDERR: flatpakutils: [DEBUG] Running flatpak remote-list --user --columns=name,title,url STDERR: flatpakutils: [DEBUG] Running flatpak list --help STDERR: flatpakutils: [DEBUG] Running flatpak list --user --columns=application,arch,branch,origin -a STDERR: flatpakutils: [DEBUG] Running: coredumpctl --since=@1727255832.101814 dump STDERR: STDERR: flatpakutils: [DEBUG] Found a11y address b'unix:abstract=/tmp/dbus-huaGs8qfVA,guid=74b91fe39c2901f2a3f2f7f666c47c54' STDERR: flatpakutils: [DEBUG] Running: flatpak run --user --die-with-parent --filesystem=host --allow=devel --share=network --talk-name=org.gtk.vfs --talk-name=org.gtk.vfs.* --session-bus --no-a11y-bus --filesystem=/tmp/webkit-flatpak-a11y-sockets-ybu4p9mo --env=AT_SPI_BUS_ADDRESS=unix:path=/tmp/webkit-flatpak-a11y-sockets-ybu4p9mo/tmpqqosvj6r --device=all --device=dri --share=ipc --socket=pulseaudio --socket=session-bus --socket=system-bus --socket=wayland --socket=x11 --system-talk-name=org.a11y.Bus --system-talk-name=org.freedesktop.GeoClue2 --talk-name=org.freedesktop.Flatpak --talk-name=org.freedesktop.secrets --env=TEST_RUNNER_INJECTED_BUNDLE_FILENAME=/app/webkit/WebKitBuild/Release/lib/libTestRunnerInjectedBundle.so --env=PATH=/usr/lib/sdk/llvm18/bin:/usr/bin:/usr/lib/sdk/rust-stable/bin/ --env=TZ=America/Los_Angeles --env=GTK_MODULES=gail:atk-bridge --env=DISPLAY=:1 --env=WEBKIT_FLATPAK_USER_DIR=/home/ziran/WebKit/WebKitBuild/UserFlatpak --env=WEBKIT_FLATPAK_LD_PRELOAD=/home/ziran/WebKit/WebKitBuild/WPE/Release/lib/libsigaction-disabler.so --command=gdb org.webkit.Sdk -ex thread apply all backtrace --batch /app/webkit/WebKitBuild/WPE/Release/bin/WPEWebProcess /run/host//tmp/tmpaejy6n0n STDERR: STDERR: BFD: warning: /run/host//tmp/tmpaejy6n0n has a segment extending past end of file STDERR: STDERR: warning: Can't open file /tmp/WebKitTestRunners-sy82aai3/appcache/mesa_shader_cache_db/index during file-backed mapping note processing STDERR: STDERR: warning: Can't open file /memfd:mesa-shared (deleted) during file-backed mapping note processing STDERR: STDERR: warning: Can't open file /memfd:WebKitSharedMemory (deleted) during file-backed mapping note processing STDERR: STDERR: warning: Error reading shared library list entry at 0xdaa6893d68844591 STDERR: Cannot access memory at address 0x7f46b08099d67834 STDERR: Cannot access memory at address 0x7f46b08099d6782c STDERR: Failed to read a valid object file image from memory. STDERR: SHOULD NEVER BE REACHED STDERR: /app/webkit/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp(1360) : std::optional<int> WebCore::MediaPlayerPrivateGStreamer::queryBufferingPercentage() STDERR: 1 0x7f1a16e7b64f WebCore::MediaPlayerPrivateGStreamer::queryBufferingPercentage() STDERR: 2 0x7f1a16ea4e05 WebCore::MediaPlayerPrivateGStreamer::fillTimerFired() STDERR: 3 0x7f1a16c6e5eb WebCore::ThreadTimers::sharedTimerFiredInternal() STDERR: 4 0x7f1a13d7aa25 WTF::RunLoop::TimerBase::TimerBase(WTF::Ref<WTF::RunLoop, WTF::RawPtrTraits<WTF::RunLoop>, WTF::DefaultRefDerefTraits<WTF::RunLoop> >&&)::{lambda(void*)#1}::_FUN(void*) STDERR: 5 0x7f1a13d7b46f WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) STDERR: 6 0x7f1a0cafcd36 g_main_context_dispatch STDERR: 7 0x7f1a0cb5a2b8 g_main_context_iterate.isra.0 STDERR: 8 0x7f1a0cafc3ff g_main_loop_run STDERR: 9 0x7f1a13d7b658 WTF::RunLoop::run() STDERR: 10 0x7f1a11f79f5f int WebKit::AuxiliaryProcessMain<WebKit::WebProcessMainWPE>(int, char**) STDERR: 11 0x7f1a0c30908a __libc_start_call_main STDERR: 12 0x7f1a0c30914b __libc_start_main STDERR: 13 0x55c42783a7e5 _start STDERR: WPEWebProcess terminated (pid 975952) for reason: crash
Attachments
zsun
Comment 1 2024-09-25 05:52:03 PDT
Possibly affected tests - media/audio-concurrent-supported.html media/audio-constructor-src.html +media/audio-controls-hidden-display-none.html +media/audio-data-url.html +media/audio-mpeg-supported.html +media/audio-mpeg4-supported.html +media/audio-play-with-video-element-interrupted.html +media/audio-playback-restriction-autoplay.html +media/audio-playback-restriction-play-muted.html +media/audio-playback-restriction-play.html +media/audio-playback-restriction-removed-muted.html +media/audio-playback-restriction-removed-track-enabled.html +media/auto-play-in-sandbox-with-allow-scripts.html +media/auto-play-video-in-about-blank-iframe.html +media/context-menu-actions.html +media/controls-should-not-trigger-isolates-blending.html +media/data-url-cross-origin.html +media/event-attributes.html +media/event-queue-crash.html +media/fullscreen-when-muted.html +media/loadedmetadata-fires-without-user-gesture-when-setRequiresUserGestureToLoadVideo-false.html +media/media-can-load-when-hidden.html +media/media-captions-no-controls.html +media/media-continues-playing-after-replace-source.html +media/media-controller-play-then-pause.html +media/media-controller-playback.html +media/media-controller-playbackrate.html +media/media-controller-time-clamp.html +media/media-controller-time-constant.html +media/media-controller-time.html +media/media-controller-timeupdate.html +media/media-controller-unpause.html +media/media-css-muted.html +media/media-element-play-after-eos.html +media/media-ended-fired-once.html +media/media-ended.html +media/media-event-listeners.html +media/media-extension-with-fragment.html +media/media-fragments/TC0003.html +media/media-fragments/TC0005.html +media/media-fragments/TC0009.html +media/media-fragments/TC0012.html +media/media-fragments/TC0014.html +media/media-fragments/TC0015.html +media/media-fragments/TC0017.html +media/media-fragments/TC0024.html +media/media-fragments/TC0027.html +media/media-fragments/TC0028.html +media/media-fragments/TC0029.html +media/media-fragments/TC0030.html +media/media-fragments/TC0031.html +media/media-fragments/TC0032.html +media/media-fragments/TC0033.html +media/media-fragments/TC0034.html +media/media-fragments/TC0035.html +media/media-fragments/TC0036.html +media/media-fragments/TC0037.html +media/media-fragments/TC0038.html +media/media-fragments/TC0039.html +media/media-fragments/TC0044.html +media/media-fragments/TC0051.html +media/media-fragments/TC0052.html +media/media-fragments/TC0053.html +media/media-fragments/TC0054.html +media/media-fragments/TC0055.html +media/media-fragments/TC0058.html +media/media-fragments/TC0059.html +media/media-fragments/TC0061.html +media/media-fragments/TC0062.html +media/media-fragments/TC0063.html +media/media-fragments/TC0064.html +media/media-fragments/TC0065.html +media/media-fragments/TC0066.html +media/media-fragments/TC0067.html +media/media-fragments/TC0068.html +media/media-fragments/TC0069.html +media/media-fragments/TC0070.html +media/media-fragments/TC0071.html +media/media-fragments/TC0072.html +media/media-fragments/TC0073.html +media/media-fragments/TC0074.html +media/media-fragments/TC0075.html +media/media-fragments/TC0076.html +media/media-fragments/TC0077.html +media/media-fragments/TC0078.html +media/media-fragments/TC0079.html +media/media-fragments/TC0080.html +media/media-fragments/TC0081.html +media/media-fragments/TC0082.html +media/media-fragments/TC0083.html +media/media-fragments/TC0084.html +media/media-fragments/TC0085.html +media/media-fragments/TC0086.html +media/media-fragments/TC0087.html +media/media-fragments/TC0088.html +media/media-fragments/TC0089.html +media/media-fragments/TC0090.html +media/media-fragments/TC0091.html +media/media-fragments/TC0092.html +media/media-fragments/TC0093.html +media/media-fragments/TC0094.html +media/media-fragments/TC0095.html +media/media-fullscreen-inline.html +media/media-fullscreen-not-in-document.html +media/media-load-event.html +media/media-play-promise-reject-load-abort.html +media/media-play-promise-reject-play-notallowed-audio.html +media/media-play-promise-reject-play-notallowed.html +media/media-play-promise-resolve-when-playing.html +media/media-play-promise-resolve.html +media/media-playback-page-visibility.html +media/media-session/default-actionHandlers.html +media/media-sources-selection.html +media/media-vp8-hiddenframes.html +media/media-vp8-webm-error.html +media/media-vp8-webm-seek-to-start.html +media/media-vp8-webm-with-poster.html +media/media-vp8-webm.html +media/media-webm-opus-buffered.html +media/media-webm-opus-error.html +media/media-webm-opus-variable-length.html +media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-off.html +media/modern-media-controls/controls-visibility-support/controls-visibility-support-controls-on.html and more in media/
Enrique Ocaña
Comment 2 2024-09-25 06:02:25 PDT
This was caused by my https://commits.webkit.org/284072@main patch. A video can work in two modes: streaming mode (GstQueue2 element is used, GST_MESSAGE_BUFFERING is relied upon to get buffering info) or download mode (GstDownloadBuffer element is used, fillTimer is used to poll its buffering percentage). The [failing ASSERT_NOT_REACHED()](https://github.com/WebKit/WebKit/blob/main/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp#L1363) is hinting about a mismatch in these assumptions, which needs to be debugged.
zsun
Comment 3 2024-09-25 06:18:39 PDT
Just to update, this also happens to some other tests that are not in media/ directory. For example, +accessibility/video-element-url-attribute.html +compositing/geometry/clipped-video-controller.html +compositing/geometry/video-fixed-scrolling.html +compositing/geometry/video-opacity-overlay.html +compositing/layers-inside-overflow-scroll.html +compositing/overflow/overflow-compositing-descendant.html +compositing/overflow/scroll-ancestor-update.html +compositing/reflections/load-video-in-reflection.html +compositing/self-painting-layers.html +compositing/self-painting-layers2.html +compositing/shared-backing/clipping-and-shared-backing.html +compositing/video-page-visibility.html +compositing/video/poster.html +compositing/video/video-border-radius-clipping.html +compositing/video/video-border-radius.html +compositing/video/video-clip-change-src.htm +compositing/video/video-object-fit.html +compositing/video/video-object-position.html +compositing/video/video-poster.html +compositing/video/video-reflection.html +compositing/video/video-update-rendering.html +compositing/visibility/visibility-simple-video-layer.html +fast/canvas/canvas-createPattern-video-loading.html +fast/canvas/canvas-createPattern-video-modify.html +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565.html +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html And more...
Enrique Ocaña
Comment 4 2024-09-25 11:43:58 PDT
EWS
Comment 5 2024-09-27 05:59:28 PDT
Committed 284353@main (ae4d384da8af): <https://commits.webkit.org/284353@main> Reviewed commits have been landed. Closing PR #34235 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.