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
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
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]
The gif-large-checkerboard test uses a super large gif image, which could lead out-of-memory.
When did this start? Might be same as bug 85077.
(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.
(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
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.
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
This might well be bug 85077.
Can't read that bug. Best I can say is image decoding looks ok here.
Can sniff the wind though; test went green after the fix landed.
Committed r115551: <http://trac.webkit.org/changeset/115551>
Marking dupe to make the relationship clear. *** This bug has been marked as a duplicate of bug 85077 ***
Concur.
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.