RESOLVED DUPLICATE of bug 85077 85073
Layout Test fast/images/gif-large-checkerboard.html is a flaky crash
https://bugs.webkit.org/show_bug.cgi?id=85073
Summary Layout Test fast/images/gif-large-checkerboard.html is a flaky crash
Dimitri Glazkov (Google)
Reported 2012-04-27 09:43:29 PDT
Test added in http://trac.webkit.org/changeset/67604 is crashing frequently. Not sure why, the stack traces have loader stuff in them. It's a puzzle. CC'ing peeps who may actually see something here. http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=fast%2Fimages%2Fgif-large-checkerboard.html
Attachments
Dimitri Glazkov (Google)
Comment 1 2012-04-27 10:32:39 PDT
As an additional datapoint. The svg/carto.net/scrollbar.svg test is also crashing occasionally with a very similar stack: http://test-results.appspot.com/dashboards/flakiness_dashboard.html#showExpectations=true&tests=svg%2Fcarto.net%2Fscrollbar.svg
Dimitri Glazkov (Google)
Comment 2 2012-04-27 10:37:50 PDT
Stack trace for the scrollbar.svg test: STDOUT: base::debug::StackTrace::StackTrace() [0x86d1f6] STDOUT: base::(anonymous namespace)::StackDumpSignalHandler() [0x82de15] STDOUT: 0x7f9d390e7af0 STDOUT: WTF::Vector<>::size() [0x4e0122] STDOUT: WTF::CStringBuffer::length() [0x4e16f6] STDOUT: WTF::CString::length() [0x4e172a] STDOUT: WebCore::KURLGooglePrivate::string() [0x10c0d34] STDOUT: WebCore::KURL::string() [0x4ac6b4] STDOUT: WebCore::CachedResource::overheadSize() [0x15e48e1] STDOUT: WebCore::CachedResource::size() [0x15f8973] STDOUT: WebCore::MemoryCache::lruListFor() [0x15f7290] STDOUT: WebCore::MemoryCache::removeFromLRUList() [0x15f7349] STDOUT: WebCore::CachedResource::setDecodedSize() [0x15e34dd] STDOUT: WebCore::CachedCSSStyleSheet::destroyDecodedData() [0x15dc9a9] STDOUT: WebCore::MemoryCache::pruneDeadResourcesToSize() [0x15f6c5e] STDOUT: WebCore::MemoryCache::pruneDeadResources() [0x15f6993] STDOUT: WebCore::MemoryCache::prune() [0x15f84ba] STDOUT: WebCore::CachedResource::didAccessDecodedData() [0x15e3754] STDOUT: WebCore::CachedImage::didDraw() [0x15dfe5e] STDOUT: WebCore::BitmapImage::draw() [0x11d11b4] STDOUT: WebCore::BitmapImage::draw() [0x10fbee0] STDOUT: WebCore::GraphicsContext::drawImage() [0x1127ba8] STDOUT: WebCore::RenderSVGImage::paint() [0x1e447ea] STDOUT: WebCore::RenderSVGContainer::paint() [0x1e96c77] Stack trace for gif-large-checkerboard.html: STDERR: [23103:23103:3008304309080:ERROR:process_util_posix.cc(143)] Received signal 11 STDERR: base::debug::StackTrace::StackTrace() [0x86d1f6] STDERR: base::(anonymous namespace)::StackDumpSignalHandler() [0x82de15] STDERR: 0x7fac0d2ccaf0 STDERR: WTF::Vector<>::size() [0x4e0122] STDERR: WTF::CStringBuffer::length() [0x4e16f6] STDERR: WTF::CString::length() [0x4e172a] STDERR: WebCore::KURLGooglePrivate::string() [0x10c0d34] STDERR: WebCore::KURL::string() [0x4ac6b4] STDERR: WebCore::CachedResource::overheadSize() [0x15e48e1] STDERR: WebCore::CachedResource::size() [0x15f8973] STDERR: WebCore::MemoryCache::lruListFor() [0x15f7290] STDERR: WebCore::MemoryCache::removeFromLRUList() [0x15f7349] STDERR: WebCore::CachedResource::setDecodedSize() [0x15e34dd] STDERR: WebCore::CachedCSSStyleSheet::destroyDecodedData() [0x15dc9a9] STDERR: WebCore::MemoryCache::pruneDeadResourcesToSize() [0x15f6c5e] STDERR: WebCore::MemoryCache::pruneDeadResources() [0x15f6993] STDERR: WebCore::MemoryCache::prune() [0x15f84ba] STDERR: WebCore::CachedResource::didAccessDecodedData() [0x15e3754] STDERR: WebCore::CachedImage::didDraw() [0x15dfe5e] STDERR: WebCore::BitmapImage::draw() [0x11d11b4] STDERR: WebCore::BitmapImage::draw() [0x10fbee0] STDERR: WebCore::GraphicsContext::drawImage() [0x1127ba8] STDERR: WebCore::GraphicsContext::drawImage() [0x11278fe] STDERR: WebCore::GraphicsContext::drawImage() [0x11277eb] STDERR: WebCore::RenderImage::paintIntoRect() [0x19737f8] STDERR: WebCore::RenderImage::paintReplaced() [0x19730b8] STDERR: WebCore::RenderReplaced::paint() [0x19e63eb] STDERR: WebCore::RenderImage::paint() [0x19731e7] STDERR: WebCore::InlineBox::paint() [0x18ad041] STDERR: WebCore::InlineFlowBox::paint() [0x18b28f4] STDERR: WebCore::RootInlineBox::paint() [0x1a41984] STDERR: WebCore::RenderLineBoxList::paint() [0x19b2dc2] STDERR: WebCore::RenderBlock::paintContents() [0x18d350f] STDERR: WebCore::RenderBlock::paintObject() [0x18d3d62] STDERR: WebCore::RenderBlock::paint() [0x18d2573] STDERR: WebCore::RenderBlock::paintChildren() [0x18d3861] STDERR: WebCore::RenderBlock::paintContents() [0x18d3528] STDERR: WebCore::RenderBlock::paintObject() [0x18d3d62] STDERR: WebCore::RenderBlock::paint() [0x18d2573] STDERR: WebCore::RenderLayer::paintLayerContents() [0x198bc40] STDERR: WebCore::RenderLayer::paintLayerContentsAndReflection() [0x198b2f6] STDERR: WebCore::RenderLayer::paintLayer() [0x198b1d4] STDERR: WebCore::RenderLayer::paintList() [0x198c310] STDERR: WebCore::RenderLayer::paintLayerContents() [0x198bec2] STDERR: WebCore::RenderLayer::paintLayerContentsAndReflection() [0x198b2f6] STDERR: WebCore::RenderLayer::paintLayer() [0x198b1d4] STDERR: WebCore::RenderLayer::paint() [0x198a78b] STDERR: WebCore::FrameView::paintContents() [0x16560ed] STDERR: WebCore::ScrollView::paint() [0x10cffa2] STDERR: WebKit::PageWidgetDelegate::paint() [0x514fa7] STDERR: WebKit::WebViewImpl::paint() [0x4cfaea] STDERR: WebViewHost::paintRect() [0x480fb9] STDERR: WebViewHost::paintInvalidatedRegion() [0x481240] STDERR: TestShell::dump() [0x46cdcc] STDERR: TestShell::testFinished() [0x46b5d6] STDERR: LayoutTestController::WorkQueue::processWorkSoon() [0x44a8cc] STDERR: LayoutTestController::locationChangeDone() [0x44bdfd] STDERR: WebViewHost::locationChangeDone() [0x4804ac] STDERR: WebViewHost::didFinishLoad() [0x47d72a] STDERR: WebKit::FrameLoaderClientImpl::dispatchDidFinishLoad() [0x5029cb] STDERR: WebCore::FrameLoader::checkLoadCompleteForThisFrame() [0x159fec1] STDERR: WebCore::FrameLoader::checkLoadComplete() [0x15a0a40]
Yong Li
Comment 3 2012-04-27 10:40:30 PDT
The gif-large-checkerboard test uses a super large gif image, which could lead out-of-memory.
Alexey Proskuryakov
Comment 4 2012-04-27 11:13:21 PDT
When did this start? Might be same as bug 85077.
Dimitri Glazkov (Google)
Comment 5 2012-04-27 11:26:01 PDT
(In reply to comment #4) > When did this start? Might be same as bug 85077. Hard to tell precisely, but it looks like the carto.net stuff started flaking around 115350s or so.
noel gordon
Comment 6 2012-04-27 14:41:18 PDT
(In reply to comment #3) > The gif-large-checkerboard test uses a super large gif image, which could lead out-of-memory. We're protected from large allocations: bug 72864, bug 48634, and the large image test fast/images/size-failure.html is passing. http://test-results.appspot.com/dashboards/flakiness_dashboard.html#group=%40ToT%20-%20webkit.org&showAllRuns=true&showExpectations=true&tests=%20fast%2Fimages%2Fsize-failure.html
noel gordon
Comment 7 2012-04-27 14:42:58 PDT
The gif-large-checkerboard is a relatively small image, ~1600 x 2000 px, and the renderer is happy to try paint it: WebCore::RenderImage::paintIntoRect(). Suggests it's decoded ok. Paints fine for me in Chrome.
noel gordon
Comment 8 2012-04-27 15:19:15 PDT
Image paint is followed by normal memory cache pruning and LRU re-organisation. I see style sheet pruning WebCore::CachedCSSStyleSheet::destroyDecodedData() in the trace. Maybe bug 85004 which is in this (rough) range - flaking began around 115350s comment #5. WebCore::KURL::string() goes berserk: is the style sheet URL bogus when computing CachedResource::overheadSize()? http://trac.webkit.org/browser/trunk/Source/WebCore/loader/cache/CachedResource.cpp?rev=111610#L749
Antti Koivisto
Comment 9 2012-04-27 16:01:41 PDT
This might well be bug 85077.
noel gordon
Comment 10 2012-04-27 16:35:13 PDT
Can't read that bug. Best I can say is image decoding looks ok here.
noel gordon
Comment 11 2012-04-27 23:58:27 PDT
Can sniff the wind though; test went green after the fix landed.
noel gordon
Comment 12 2012-04-28 00:02:10 PDT
Antti Koivisto
Comment 13 2012-04-28 00:06:00 PDT
Marking dupe to make the relationship clear. *** This bug has been marked as a duplicate of bug 85077 ***
noel gordon
Comment 14 2012-04-28 00:13:41 PDT
Concur.
noel gordon
Comment 15 2012-04-28 00:48:48 PDT
And started at bug 85004, I believe. Wonder if that works well for forum sites like http://gcfly.org/viewthread.php?tid=5721 where images thrash the decoded resources mem cache.
Note You need to log in before you can comment on or make changes to this bug.