Bug 103171

Summary: REGRESSION(r135620): ASSERT(m_state.drawsContent && m_state.contentsVisible && !m_size.isEmpty()) hits in TextureMapperLayer::paintSelf().
Product: WebKit Reporter: Dongseong Hwang <dongseong.hwang>
Component: Layout and RenderingAssignee: Dongseong Hwang <dongseong.hwang>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, dglazkov, jussi.kukkonen, levin+threading, noam, webkit.review.bot, zeno
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 103046, 103298, 103498, 103527    
Bug Blocks:    
Attachments:
Description Flags
Patch
webkit.review.bot: commit-queue-
Patch
none
Patch
none
Patch none

Dongseong Hwang
Reported 2012-11-23 23:22:10 PST
ASSERT(m_state.drawsContent && m_state.contentsVisible && !m_size.isEmpty()) hits in TextureMapperLayer::paintSelf(). It occurs in only WK2. We need to investigate CoordinatedGraphicsLayer and LayerTreeCoordinator to find invariant breaker.
Attachments
Patch (6.52 KB, patch)
2012-11-25 22:51 PST, Dongseong Hwang
webkit.review.bot: commit-queue-
Patch (2.25 KB, patch)
2012-11-27 02:03 PST, Dongseong Hwang
no flags
Patch (6.88 KB, patch)
2012-11-27 03:35 PST, Dongseong Hwang
no flags
Patch (6.94 KB, patch)
2012-11-27 17:28 PST, Dongseong Hwang
no flags
Dongseong Hwang
Comment 1 2012-11-23 23:24:11 PST
When entering http://www.satine.org/research/webkit/snowleopard/snowstack.html in WK2, WK2 crashes. ASSERTION FAILED: m_state.drawsContent && m_state.contentsVisible && !m_size.isEmpty() /media/WDDisk/workspace/WebKit/WebKit/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp(113) : void WebCore::TextureMapperLayer::paintSelf(const WebCore::TextureMapperPaintOptions&) 1 0x7fdd6e541a95 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer9paintSelfERKNS_25TextureMapperPaintOptionsE+0x1cd) [0x7fdd6e541a95] 2 0x7fdd6e541dd9 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x33) [0x7fdd6e541dd9] 3 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 4 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 5 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 6 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 7 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 8 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 9 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 10 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 11 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 12 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 13 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 14 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 15 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 16 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 17 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 18 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 19 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 20 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 21 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 22 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 23 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 24 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 25 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 26 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 27 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 28 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1] 29 0x7fdd6e541f45 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer20paintSelfAndChildrenERKNS_25TextureMapperPaintOptionsE+0x19f) [0x7fdd6e541f45] 30 0x7fdd6e5428f5 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer31paintSelfAndChildrenWithReplicaERKNS_25TextureMapperPaintOptionsE+0x177) [0x7fdd6e5428f5] 31 0x7fdd6e542bb1 /media/WDDisk/workspace/WebKit/WebKit/WebKitBuild/qt5/Debug/lib/../lib/libWebCore.so.1(_ZN7WebCore18TextureMapperLayer14paintRecursiveERKNS_25TextureMapperPaintOptionsE+0x12f) [0x7fdd6e542bb1]
Dongseong Hwang
Comment 2 2012-11-25 22:51:18 PST
Noam Rosenthal
Comment 3 2012-11-25 23:14:03 PST
Comment on attachment 175928 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=175928&action=review This doesn't seem right; You don't just remove > Source/WebKit2/ChangeLog:8 > + This patch makes only Web Process cause running LayerTreeRenderer::syncRemoteContent(). Can you explain how this causes the assert? The commands in the render queue are supposed to be buffered anyway by GraphicsLayerTextureMapper, but seems here that some of them are not... Also, I would change this description to say "Buffer the render queue commands until the web process calls didRenderFrame. > Source/WebKit2/ChangeLog:12 > + only the part of sync requests can be executed. Users can see the intermediate > + state (i.e. flashing). After this patch, we can not see the intermediate state. Are there existing tests that show this flash? I was able to see it several times, but it would be good to mention which tests expose this.
Dongseong Hwang
Comment 4 2012-11-26 00:16:05 PST
(In reply to comment #3) > (From update of attachment 175928 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=175928&action=review Thanks for review! > This doesn't seem right; You don't just remove Do you mean it is wrong that we flush the render queue only after the web process calls didRenderFrame? Maybe performance issue? If so, we need to rethink more deeply how to fix. > > > Source/WebKit2/ChangeLog:8 > > + This patch makes only Web Process cause running LayerTreeRenderer::syncRemoteContent(). > > Can you explain how this causes the assert? The commands in the render queue are supposed to be buffered anyway by GraphicsLayerTextureMapper, but seems here that some of them are not... > Also, I would change this description to say "Buffer the render queue commands until the web process calls didRenderFrame. I do my best to explain. If vague, let me know please. Animation causes following seq. - LayerTreeRenderer::setLayerState - TextureMapperLayer::paint - LayerTreeRenderer::flushLayerChanges The reason of this problem is that LayerTreeRenderer changes states of GraphicsLayerTextureMappler while setting a backing store to TextureMapplerLayer. It means TextureMapplerLayer can know the backing store before TextureMapplerLayer::flushCompositingState that LayerTreeRenderer::flushLayerChanges normally calls. void LayerTreeRenderer::setLayerState(WebLayerID id, const WebLayerInfo& layerInfo) { ... layer->setSize(layerInfo.size); ... layer->setDrawsContent(layerInfo.drawsContent); ... prepareContentBackingStore(layer); ... } So Assert hits. I'd come close to removing ASSERT simply, but I thought it is not right way. > > Source/WebKit2/ChangeLog:12 > > + only the part of sync requests can be executed. Users can see the intermediate > > + state (i.e. flashing). After this patch, we can not see the intermediate state. > > Are there existing tests that show this flash? I was able to see it several times, but it would be good to mention which tests expose this. We can see the flash in snowstack http://www.satine.org/research/webkit/snowleopard/snowstack.html However, it becomes very rare after Bug 103215. When you press space continuously (it causes zooming), you can see flash sometimes. The zoomed image transits a div containing to a directly composited image at the end of animation, and vice versa. In the detail, we can see the flash only if below seq hits like ASSERT: - LayerTreeRenderer::setLayerState - TextureMapperLayer::paint - LayerTreeRenderer::flushLayerChanges
WebKit Review Bot
Comment 5 2012-11-26 02:49:25 PST
Comment on attachment 175928 [details] Patch Attachment 175928 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/14983589 New failing tests: inspector-protocol/debugger-terminate-dedicated-worker-while-paused.html
Dongseong Hwang
Comment 6 2012-11-26 04:34:21 PST
I'd re-thought about this bug. If LayerTreeRenderer::setLayerState() actually sync a layer state to TextureMapperLayer, this assertion can not hit. It means that we fix this bug if we remove the dependency of LayerTreeRenderer on GraphicsLayerTextureMapper as our plan. I think it is overshoot to remove the dependency here, so this patch will just synchronizes each TextureMapperLayer in LayerTreeRenderer::setLayerState(). We will remove the dependency in another bug. I'll update.
Dongseong Hwang
Comment 7 2012-11-27 02:03:51 PST
Noam Rosenthal
Comment 8 2012-11-27 02:21:18 PST
Comment on attachment 176203 [details] Patch I'm quite sure this will break more stuff :) The right thing is to not set the backing store until the next flush.
Dongseong Hwang
Comment 9 2012-11-27 02:43:56 PST
(In reply to comment #8) > (From update of attachment 176203 [details]) > I'm quite sure this will break more stuff :) > The right thing is to not set the backing store until the next flush. Ok. I agree on you. I set the backing store during the next flush. In my understand, we must not update TextureMapperLayer until the next flush, so we just update GraphicsLayer until the next flush. If so, I'm curious why the first patch could break something: perform flushing render queue only when receiving DidRenderFrame message. I agree that the first patch is not pretty, so I don't want to :) I'm just curious for more understanding. BTW, after we remove all dependency of GraphicsLayerTextureMapper in LayerTreeRenderer, TextureMapperLayer will have queue like render queue of LayerTreeRenderer to flush all at the next flush. Do you think so?
Noam Rosenthal
Comment 10 2012-11-27 02:51:22 PST
(In reply to comment #9) > If so, I'm curious why the first patch could break something: perform flushing render queue only when receiving DidRenderFrame message. I agree that the first patch is not pretty, so I don't want to :) > I'm just curious for more understanding. It would probably not break anything, but it's too early for this patch. The right thing to do at this point is to buffer the setBackingStore command, and only execute it "for real" during the next flush.
Dongseong Hwang
Comment 11 2012-11-27 03:35:21 PST
Dongseong Hwang
Comment 12 2012-11-27 03:42:47 PST
(In reply to comment #10) > (In reply to comment #9) > > If so, I'm curious why the first patch could break something: perform flushing render queue only when receiving DidRenderFrame message. I agree that the first patch is not pretty, so I don't want to :) > > I'm just curious for more understanding. > It would probably not break anything, but it's too early for this patch. The right thing to do at this point is to buffer the setBackingStore command, and only execute it "for real" during the next flush. (In reply to comment #11) > Created an attachment (id=176222) [details] > Patch Thanks for explanation. I did as you mentioned. However, this patch can not remove flashing. I saw flash in snowstack as I mentioned #c1. However, the first patch fixed flash. I'll investigate how to remove flash. We can fix flash in another bug.
Noam Rosenthal
Comment 13 2012-11-27 09:05:05 PST
Comment on attachment 176222 [details] Patch Looks good, but purple :)
Dongseong Hwang
Comment 14 2012-11-27 15:31:39 PST
(In reply to comment #13) > (From update of attachment 176222 [details]) > Looks good, but purple :) Thanks! This bug depends on Bug 103298. I can merge this patch and Bug 103298 if needed, because this patch is a bit follow-up patch of Bug 103298.
Dongseong Hwang
Comment 15 2012-11-27 17:28:41 PST
Dongseong Hwang
Comment 16 2012-11-27 17:33:29 PST
(In reply to comment #15) > Created an attachment (id=176373) [details] > Patch After this patch, I can not encounter hitting Assertion easily. I'll post patch after checking more carefully :)
WebKit Review Bot
Comment 17 2012-11-27 17:53:20 PST
Comment on attachment 176373 [details] Patch Clearing flags on attachment: 176373 Committed r135962: <http://trac.webkit.org/changeset/135962>
WebKit Review Bot
Comment 18 2012-11-27 17:53:25 PST
All reviewed patches have been landed. Closing bug.
Chris Dumez
Comment 19 2012-11-28 00:10:59 PST
Comment on attachment 176373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review > Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:169 > + BackingStoreMap m_pedningSyncBackingStores; arf. That's a nice typo.
Chris Dumez
Comment 20 2012-11-28 00:13:09 PST
Comment on attachment 176373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review > Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:457 > + ASSERT(!m_pedningSyncBackingStores.contains(layer)); Just FYI, I'm hitting this assertion when running the compositing test cases locally.
Chris Dumez
Comment 21 2012-11-28 00:14:51 PST
Comment on attachment 176373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review > Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:446 > + ASSERT(!m_pedningSyncBackingStores.contains(layer)); Sorry, my bad. It is actually this assert.
Jussi Kukkonen (jku)
Comment 22 2012-11-28 02:04:18 PST
(In reply to comment #21) > (From update of attachment 176373 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review > > > Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:446 > > + ASSERT(!m_pedningSyncBackingStores.contains(layer)); > > Sorry, my bad. It is actually this assert. This happens on the bot as well, ~10 crashing tests on EFL WK2 Debug (at least): 18:07:40.667 21028 ASSERTION FAILED: !m_pedningSyncBackingStores.contains(layer) 18:07:40.667 21028 /home/buildslave-1/webkit-buildslave/efl-linux-64-debug-wk2/build/Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp(446) : void WebKit::LayerTreeRenderer::createBackingStoreIfNeeded(WebCore::GraphicsLayer*) 18:07:40.667 21028 1 0x7f592cdd759c WebKit::LayerTreeRenderer::createBackingStoreIfNeeded(WebCore::GraphicsLayer*) 18:07:40.667 21028 2 0x7f592cdd7455 WebKit::LayerTreeRenderer::prepareContentBackingStore(WebCore::GraphicsLayer*) 18:07:40.667 21028 3 0x7f592cdd6f83 WebKit::LayerTreeRenderer::setLayerState(unsigned int, WebKit::WebLayerInfo const&) 18:07:40.667 21028 4 0x7f592cdd57f3 WTF::FunctionWrapper<void (WebKit::LayerTreeRenderer::*)(unsigned int, WebKit::WebLayerInfo const&)>::operator()(WebKit::LayerTreeRenderer*, unsigned int, WebKit::WebLayerInfo const&) 18:07:40.667 21028 5 0x7f592cdd4ee8 WTF::BoundFunctionImpl<WTF::FunctionWrapper<void (WebKit::LayerTreeRenderer::*)(unsigned int, WebKit::WebLayerInfo const&)>, void (WebKit::LayerTreeRenderer*, unsigned int, WebKit::WebLayerInfo)>::operator()() 18:07:40.667 21028 6 0x7f5933e86bd6 WTF::Function<void ()>::operator()() const 18:07:40.667 21028 7 0x7f592cdd8750 WebKit::LayerTreeRenderer::syncRemoteContent() 18:07:40.667 21028 8 0x7f592cdd6027 WebKit::LayerTreeRenderer::paintToCurrentGLContext(WebCore::TransformationMatrix const&, float, WebCore::FloatRect const&, unsigned int) 18:07:40.668 21028 9 0x7f592cf07088 EwkViewImpl::displayTimerFired(WebCore::Timer<EwkViewImpl>*) 18:07:40.668 21028 10 0x7f592cf0e60e WebCore::Timer<EwkViewImpl>::fired() 18:07:40.668 21028 11 0x7f5930347e86 WebCore::ThreadTimers::sharedTimerFiredInternal() 18:07:40.668 21028 12 0x7f5930347da7 WebCore::ThreadTimers::sharedTimerFired()
Chris Dumez
Comment 23 2012-11-28 03:04:00 PST
(In reply to comment #22) > (In reply to comment #21) > > (From update of attachment 176373 [details] [details]) > > View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review > > > > > Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:446 > > > + ASSERT(!m_pedningSyncBackingStores.contains(layer)); > > > > Sorry, my bad. It is actually this assert. > > This happens on the bot as well, ~10 crashing tests on EFL WK2 Debug (at least): > > 18:07:40.667 21028 ASSERTION FAILED: !m_pedningSyncBackingStores.contains(layer) > 18:07:40.667 21028 /home/buildslave-1/webkit-buildslave/efl-linux-64-debug-wk2/build/Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp(446) : void WebKit::LayerTreeRenderer::createBackingStoreIfNeeded(WebCore::GraphicsLayer*) > 18:07:40.667 21028 1 0x7f592cdd759c WebKit::LayerTreeRenderer::createBackingStoreIfNeeded(WebCore::GraphicsLayer*) > 18:07:40.667 21028 2 0x7f592cdd7455 WebKit::LayerTreeRenderer::prepareContentBackingStore(WebCore::GraphicsLayer*) > 18:07:40.667 21028 3 0x7f592cdd6f83 WebKit::LayerTreeRenderer::setLayerState(unsigned int, WebKit::WebLayerInfo const&) > 18:07:40.667 21028 4 0x7f592cdd57f3 WTF::FunctionWrapper<void (WebKit::LayerTreeRenderer::*)(unsigned int, WebKit::WebLayerInfo const&)>::operator()(WebKit::LayerTreeRenderer*, unsigned int, WebKit::WebLayerInfo const&) > 18:07:40.667 21028 5 0x7f592cdd4ee8 WTF::BoundFunctionImpl<WTF::FunctionWrapper<void (WebKit::LayerTreeRenderer::*)(unsigned int, WebKit::WebLayerInfo const&)>, void (WebKit::LayerTreeRenderer*, unsigned int, WebKit::WebLayerInfo)>::operator()() > 18:07:40.667 21028 6 0x7f5933e86bd6 WTF::Function<void ()>::operator()() const > 18:07:40.667 21028 7 0x7f592cdd8750 WebKit::LayerTreeRenderer::syncRemoteContent() > 18:07:40.667 21028 8 0x7f592cdd6027 WebKit::LayerTreeRenderer::paintToCurrentGLContext(WebCore::TransformationMatrix const&, float, WebCore::FloatRect const&, unsigned int) > 18:07:40.668 21028 9 0x7f592cf07088 EwkViewImpl::displayTimerFired(WebCore::Timer<EwkViewImpl>*) > 18:07:40.668 21028 10 0x7f592cf0e60e WebCore::Timer<EwkViewImpl>::fired() > 18:07:40.668 21028 11 0x7f5930347e86 WebCore::ThreadTimers::sharedTimerFiredInternal() > 18:07:40.668 21028 12 0x7f5930347da7 WebCore::ThreadTimers::sharedTimerFired() I filed https://bugs.webkit.org/show_bug.cgi?id=103498. I may have a fix for it but I need to test it a bit.
Darin Adler
Comment 24 2012-11-28 10:50:56 PST
Comment on attachment 176373 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review >> Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:169 >> + BackingStoreMap m_pedningSyncBackingStores; > > arf. That's a nice typo. This landed with pedning but needs to be changed to pending.
Noam Rosenthal
Comment 25 2012-11-28 10:52:21 PST
(In reply to comment #24) > (From update of attachment 176373 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=176373&action=review > > >> Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:169 > >> + BackingStoreMap m_pedningSyncBackingStores; > > > > arf. That's a nice typo. > > This landed with pedning but needs to be changed to pending. Oops, missed that in review. DongSung, can you please fix?
Chris Dumez
Comment 26 2012-11-28 10:57:31 PST
I already fixed the typo in one of the recent patches I marked as dependency, along with the assertion hit.
Dongseong Hwang
Comment 27 2012-11-28 15:43:47 PST
(In reply to comment #26) > I already fixed the typo in one of the recent patches I marked as dependency, along with the assertion hit. Thank you so much!!
Dongseong Hwang
Comment 28 2013-01-29 16:47:56 PST
*** Bug 103400 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.