Bug 173422

Summary: [WPE] Some fast/animation/ tests crash irregularly
Product: WebKit Reporter: Claudio Saavedra <csaavedra>
Component: WPE WebKitAssignee: Ms2ger (he/him; ⌚ UTC+1/+2) <Ms2ger>
Status: RESOLVED FIXED    
Severity: Normal CC: bugs-noreply, commit-queue, Ms2ger
Priority: P2    
Version: WebKit Local Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Claudio Saavedra 2017-06-15 09:43:41 PDT
These tests are crashing irregularly when ran with many iterations.

fast/animation/request-animation-frame-cancel.html failed unexpectedly (WebProcess crashed [pid=28834])
fast/animation/request-animation-frame-detach-element.html failed unexpectedly (WebProcess crashed [pid=28880])
fast/animation/request-animation-frame-disabled.html failed unexpectedly (WebProcess crashed [pid=28927])
fast/animation/request-animation-frame-disabled.html failed unexpectedly (WebProcess crashed [pid=28988])
fast/animation/request-animation-frame-during-modal.html failed unexpectedly (WebProcess crashed [pid=29030])
fast/animation/animation-style-update-size.html failed unexpectedly (WebProcess crashed [pid=29637])

The stacktraces are all pretty much the same and the problem is an assertion:

Thread 1 (Thread 0x7ff301cff700 (LWP 29652)):
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ff35ad473fa in __GI_abort () at abort.c:89
#2  0x00007ff35ad3ee37 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x7ff3120ef23e "bo", file=file@entry=0x7ff3120ef1c0 "/home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/WPEBackend-mesa/src/gbm/renderer-backend-egl-gbm.cpp", line=line@entry=210, function=function@entry=0x7ff3120ef250 <{lambda(void*)#10}::operator()(void*) const::__PRETTY_FUNCTION__> "<lambda(void*)>") at assert.c:92
#3  0x00007ff35ad3eee2 in __GI___assert_fail (assertion=0x7ff3120ef23e "bo", file=0x7ff3120ef1c0 "/home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/WPEBackend-mesa/src/gbm/renderer-backend-egl-gbm.cpp", line=210, function=0x7ff3120ef250 <{lambda(void*)#10}::operator()(void*) const::__PRETTY_FUNCTION__> "<lambda(void*)>") at assert.c:101
#4  0x00007ff3120e898b in {lambda(void*)#10}::operator()(void*) const () from /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Root/lib/libWPEBackend-default.so
#5  0x00007ff3120e8b90 in {lambda(void*)#10}::_FUN(void*) () from /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Root/lib/libWPEBackend-default.so
#6  0x00007ff35b9576bb in wpe_renderer_backend_egl_target_frame_rendered () from /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Root/lib/libWPEBackend.so.0
#7  0x00007ff364827cd0 in WebKit::ThreadedCompositor::renderLayerTree() () from /home/claudio/git/metrological/WebKit/WebKitBuild/Release/lib/libWPEWebKit.so.0
#8  0x00007ff3669ce75a in WTF::RunLoop::TimerBase::TimerBase(WTF::RunLoop&)::{lambda(void*)#1}::_FUN(void*) () from /home/claudio/git/metrological/WebKit/WebKitBuild/Release/lib/libWPEWebKit.so.0
#9  0x00007ff35c4a563a in g_main_dispatch (context=0x7ff2f0000900) at /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/glib-2.44.1/glib/gmain.c:3122
#10 g_main_context_dispatch (context=context@entry=0x7ff2f0000900) at /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/glib-2.44.1/glib/gmain.c:3737
#11 0x00007ff35c4a59b8 in g_main_context_iterate (context=0x7ff2f0000900, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/glib-2.44.1/glib/gmain.c:3808
#12 0x00007ff35c4a5cd2 in g_main_loop_run (loop=0x7ff2f0001240) at /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/glib-2.44.1/glib/gmain.c:4002
#13 0x00007ff3669ceb50 in WTF::RunLoop::run() () from /home/claudio/git/metrological/WebKit/WebKitBuild/Release/lib/libWPEWebKit.so.0
#14 0x00007ff3669cdb34 in WTF::Function<void ()>::CallableWrapper<WTF::WorkQueue::platformInitialize(char const*, WTF::WorkQueue::Type, WTF::WorkQueue::QOS)::{lambda()#1}>::call() () from /home/claudio/git/metrological/WebKit/WebKitBuild/Release/lib/libWPEWebKit.so.0
#15 0x00007ff366991895 in WTF::threadEntryPoint(void*) () from /home/claudio/git/metrological/WebKit/WebKitBuild/Release/lib/libWPEWebKit.so.0
#16 0x00007ff3669cc8a0 in WTF::wtfThreadEntryPoint(void*) () from /home/claudio/git/metrological/WebKit/WebKitBuild/Release/lib/libWPEWebKit.so.0
#17 0x00007ff360da3494 in start_thread (arg=0x7ff301cff700) at pthread_create.c:333
#18 0x00007ff35adfbaff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

STDERR: 51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
STDERR: WPEWebProcess: /home/claudio/git/metrological/WebKit/WebKitBuild/DependenciesWPE/Source/WPEBackend-mesa/src/gbm/renderer-backend-egl-gbm.cpp:210: <lambda(void*)>: Assertion `bo' failed.
Comment 1 Claudio Saavedra 2017-06-16 03:05:29 PDT
I marked the whole fast/animation dir as flaky, as at least half of the tests crash occasionally with the same stacktrace.
Comment 2 Ms2ger (he/him; ⌚ UTC+1/+2) 2017-11-22 08:23:02 PST
Created attachment 327454 [details]
Patch
Comment 3 WebKit Commit Bot 2017-11-22 08:54:42 PST
Comment on attachment 327454 [details]
Patch

Clearing flags on attachment: 327454

Committed r225095: <https://trac.webkit.org/changeset/225095>
Comment 4 WebKit Commit Bot 2017-11-22 08:54:43 PST
All reviewed patches have been landed.  Closing bug.