Bug 74788

Summary: REGRESSION(r103130) - svg/W3C-SVG-1.1/animate-elem-*-t.svg asserting
Product: WebKit Reporter: Adrienne Walker <enne>
Component: SVGAssignee: Stephen Chenney <schenney>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: beidson, darin, enne, jknotten, rniwa, schenney, webkit.review.bot, zimmermann
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Adrienne Walker 2011-12-17 12:59:03 PST
A number of svg animation tests are intermittently crashing on an assert in debug in Chromium's layout tests, although the release tests continue to pass.

ASSERTION FAILED: m_activeState != Active
/b/build/slave/webkit-mac-latest-dbg/build/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../svg/animation/SVGSMILElement.cpp(921) : void WebCore::SVGSMILElement::progress(WebCore::SMILTime, WebCore::SVGSMILElement *)
1   0x53462dec WebCore::SVGSMILElement::progress(WebCore::SMILTime, WebCore::SVGSMILElement*)
2   0x53450374 WebCore::SMILTimeContainer::updateAnimations(WebCore::SMILTime, double, WTF::String const&)
3   0x5344f73b WebCore::SMILTimeContainer::timerFired(WebCore::Timer<WebCore::SMILTimeContainer>*)
4   0x5345af17 WebCore::Timer<WebCore::SMILTimeContainer>::fired()
5   0x51e7119e WebCore::ThreadTimers::sharedTimerFiredInternal()
6   0x51e70f2f WebCore::ThreadTimers::sharedTimerFired()
7   0x53842689 webkit_glue::WebKitPlatformSupportImpl::DoTimeout()
8   0x538431d7 base::BaseTimer<webkit_glue::WebKitPlatformSupportImpl, false>::TimerTask::Run()

Here's a sampling of tests that have been failing.  Win, Linux, and Mac all seem affected.

http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=svg%2FW3C-SVG-1.1%2Fanimate-elem-46-t.svg%2Csvg%2FW3C-SVG-1.1%2Fanimate-elem-44-t.svg%2Csvg%2FW3C-SVG-1.1%2Fanimate-elem-52-t.svg%2Csvg%2FW3C-SVG-1.1%2Fanimate-elem-41-t.svg%2Csvg%2FW3C-SVG-1.1%2Fanimate-elem-81-t.svg%2Csvg%2FW3C-SVG-1.1%2Fanimate-elem-65-t.svg%2Csvg%2FW3C-SVG-1.1%2Fanimate-elem-82-t.svg

From the potential revision ranges where the above tests started crashing, the culprit is r103130 or before.  In looking at http://trac.webkit.org/log/?action=stop_on_copy&mode=stop_on_copy&rev=103130&stop_rev=103100&limit=100&verbose=on, this seems the most likely revision.

I was able to repro this locally on Chromium's debug Linux DRT by running all the animate-elem*.svg tests with child-processes=1, where one test consistently failed.  If I reverted this patch, it succeeded in 10/10 runs.
Comment 1 Adrienne Walker 2011-12-17 13:19:37 PST
Committed r103156: <http://trac.webkit.org/changeset/103156>
Comment 2 Ryosuke Niwa 2011-12-23 19:57:36 PST
It appears that these tests are no longer asserting.
Comment 3 Ryosuke Niwa 2011-12-24 01:07:54 PST
Hm... it appears that some of these crashes are still happening. I've removed them all in http://trac.webkit.org/changeset/103645 but had to add some of them back in http://trac.webkit.org/changeset/103654.
Comment 4 John Knottenbelt 2012-01-10 03:48:00 PST
svg/W3C-SVG-1.1/animate-elem-60-t.svg is flakily asserting on linux dgb:

http://test-results.appspot.com/dashboards/flakiness_dashboard.html#showExpectations=true&tests=svg%2FW3C-SVG-1.1%2Fanimate-elem-60-t.svg
Comment 5 Stephen Chenney 2012-01-11 07:41:47 PST
Taking ownership, as it seems the fastest way to get to the bottom of this. I'll first update expectations to mark it failing.
Comment 6 Stephen Chenney 2012-01-11 07:49:25 PST
Created attachment 122020 [details]
Patch

Expectations update to stop build failures
Comment 7 WebKit Review Bot 2012-01-11 09:20:07 PST
Comment on attachment 122020 [details]
Patch

Clearing flags on attachment: 122020

Committed r104715: <http://trac.webkit.org/changeset/104715>
Comment 8 WebKit Review Bot 2012-01-11 09:20:12 PST
All reviewed patches have been landed.  Closing bug.
Comment 9 Stephen Chenney 2012-01-11 09:20:59 PST
Still need to actually fix it.
Comment 10 Stephen Chenney 2012-01-20 07:12:53 PST
Marking all bugs reporting assertions in WebCore::SVGSMILElement::progress as duplicates.

*** This bug has been marked as a duplicate of bug 64671 ***