<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>117703</bug_id>
          
          <creation_ts>2013-06-17 09:23:46 -0700</creation_ts>
          <short_desc>[WK2][GTK] 100% CPU usage rendering a page with animations</short_desc>
          <delta_ts>2013-06-28 07:50:24 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://hugogiraudel.com/2013/04/04/css-grid-layout/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergio Villar Senin">svillar</reporter>
          <assigned_to name="Sergio Villar Senin">svillar</assigned_to>
          <cc>alex</cc>
    
    <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>cgarcia</cc>
    
    <cc>gustavo</cc>
    
    <cc>mrobinson</cc>
    
    <cc>ossy</cc>
    
    <cc>rego</cc>
    
    <cc>sergio</cc>
    
    <cc>svillar</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>901063</commentid>
    <comment_count>0</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-17 09:23:46 -0700</bug_when>
    <thetext>Try to load the above page using the WebKit2 Gtk port (Minibrowser is OK). After the load finishes scrolling becomes impossible, it&apos;s even not possible to click on links. From what I&apos;ve seen trying to get WebProcess backtraces while this happens, I think the culprit is some animation at the very end of the page.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901065</commentid>
    <comment_count>1</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-17 09:29:17 -0700</bug_when>
    <thetext>Not sure if very useful, but it looks like the code is constantly doing this:

(gdb) bt
#0  0x00007fbde8989b9a in WTF::HashTableConstIterator&lt;WTF::RefPtr&lt;WebCore::Widget&gt;, WTF::RefPtr&lt;WebCore::Widget&gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt; &gt;::get () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#1  0x00007fbde8988d32 in WTF::HashTableConstIteratorAdapter&lt;WTF::HashTable&lt;WTF::RefPtr&lt;WebCore::Widget&gt;, WTF::RefPtr&lt;WebCore::Widget&gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt; &gt;, WTF::RefPtr&lt;WebCore::Widget&gt; &gt;::get () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#2  0x00007fbde8987d8c in WTF::HashTableConstIteratorAdapter&lt;WTF::HashTable&lt;WTF::RefPtr&lt;WebCore::Widget&gt;, WTF::RefPtr&lt;WebCore::Widget&gt;, WTF::IdentityExtractor, WTF::PtrHash&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt;, WTF::HashTraits&lt;WTF::RefPtr&lt;WebCore::Widget&gt; &gt; &gt;, WTF::RefPtr&lt;WebCore::Widget&gt; &gt;::operator* () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#3  0x00007fbde91320c8 in collectFrameViewChildren () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#4  0x00007fbde913bcca in WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#5  0x00007fbde88490ce in WebKit::WebPage::layoutIfNeeded () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#6  0x00007fbde88758d4 in WebKit::LayerTreeHostGtk::flushAndRenderLayers () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#7  0x00007fbde887554c in WebKit::LayerTreeHostGtk::layerFlushTimerFired () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#8  0x00007fbde88754ec in WebKit::LayerTreeHostGtk::layerFlushTimerFiredCallback () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#9  0x00007fbde503bb5e in g_timeout_dispatch (source=0x1bf20c0, callback=0x7fbde88754d4 &lt;WebKit::LayerTreeHostGtk::layerFlushTimerFiredCallback(WebKit::LayerTreeHostGtk*)&gt;, user_data=0x17f5fe0) at gmain.c:4417
#10 0x00007fbde5039e01 in g_main_dispatch (context=0x112f960) at gmain.c:3058
#11 0x00007fbde503ab66 in g_main_context_dispatch (context=0x112f960) at gmain.c:3634
#12 0x00007fbde503ad56 in g_main_context_iterate (context=0x112f960, block=1, dispatch=1, self=0x117b500) at gmain.c:3705
#13 0x00007fbde503b186 in g_main_loop_run (loop=0x1167ea0) at gmain.c:3899
#14 0x00007fbde9ed149a in WebCore::RunLoop::run () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#15 0x00007fbde8782a8c in WebProcessMainGtk () from /opt/checkout/WebKit/WebKitBuild/Debug/.libs/libwebkit2gtk-3.0.so.25
#16 0x00000000004009fc in main ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901077</commentid>
    <comment_count>2</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2013-06-17 10:00:35 -0700</bug_when>
    <thetext>Hrm. Do you see the same issue with the Qt or EFL port? From the stack, what&apos;s happening is that it&apos;s doing a relayout.  The amount that this happens should be limited to the page framerate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901087</commentid>
    <comment_count>3</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-17 10:33:30 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Hrm. Do you see the same issue with the Qt or EFL port? From the stack, what&apos;s happening is that it&apos;s doing a relayout.  The amount that this happens should be limited to the page framerate.

My Qt build does not show that behavior, although it&apos;s a bit older, I&apos;ll try with a more recent build.

Anyway, maybe the problem is precisely that it&apos;s constantly relayouting when it shouldn&apos;t?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901142</commentid>
    <comment_count>4</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-17 12:25:25 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Hrm. Do you see the same issue with the Qt or EFL port? From the stack, what&apos;s happening is that it&apos;s doing a relayout.  The amount that this happens should be limited to the page framerate.
&gt; 
&gt; My Qt build does not show that behavior, although it&apos;s a bit older, I&apos;ll try with a more recent build.

Qt port behaves correctly, as the summary suggests this is a gtk only issue</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>901318</commentid>
    <comment_count>5</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-06-18 02:01:07 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; Try to load the above page using the WebKit2 Gtk port (Minibrowser is OK). After the load finishes scrolling becomes impossible, it&apos;s even not possible to click on links. From what I&apos;ve seen trying to get WebProcess backtraces while this happens, I think the culprit is some animation at the very end of the page.

I can confirm this behavior it&apos;s happening the same to me, even WebView becomes black after a while.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>904235</commentid>
    <comment_count>6</comment_count>
      <attachid>205606</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-27 07:39:28 -0700</bug_when>
    <thetext>Created attachment 205606
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>904620</commentid>
    <comment_count>7</comment_count>
      <attachid>205606</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-28 07:50:09 -0700</bug_when>
    <thetext>Comment on attachment 205606
Patch

Clearing flags on attachment: 205606

Committed r152165: &lt;http://trac.webkit.org/changeset/152165&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>904621</commentid>
    <comment_count>8</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-06-28 07:50:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205606</attachid>
            <date>2013-06-27 07:39:28 -0700</date>
            <delta_ts>2013-06-28 07:50:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-117703-20130627163729.patch</filename>
            <type>text/plain</type>
            <size>1897</size>
            <attacher name="Sergio Villar Senin">svillar</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxODI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTM5NjU2ZGE1MTU4YjRi
MzQ5ZjlmYjc5ZWE3YzVhNzRlYzgzZTI1Yi4uNjE2MWFjMTA4ZDU3MDJiNTM3YmUxZGYyYTc0Y2Fl
MTNhNWUwM2I3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTA2LTI3ICBTZXJn
aW8gVmlsbGFyIFNlbmluICA8c3ZpbGxhckBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXSzJdW0dU
S10gMTAwJSBDUFUgdXNhZ2UgcmVuZGVyaW5nIGEgcGFnZSB3aXRoIGFuaW1hdGlvbnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzcwMworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVuY29uZGl0aW9uYWxs
eSB1cGRhdGUgdGhlIHZhbHVlIG9mIG1fbGFzdEZsdXNoVGltZSBpbgorICAgICAgICA6OmZsdXNo
QW5kUmVuZGVyTGF5ZXJzLiBCeSBkb2luZyB0aGF0IHdlIGF2b2lkIGEgbmV2ZXJlbmRpbmcKKyAg
ICAgICAgc2VxdWVuY2Ugb2YgbGF5ZXIgZmx1c2hlcyB0aGF0IGhhcHBlbmVkIHdoZW4gbV9sYXN0
Rmx1c2hUaW1lPT0wCisgICAgICAgIGFuZCBmbHVzaFBlbmRpbmdMYXllckNoYW5nZXMoKSB3YXMg
ZmFsc2UuIEluIHRoYXQgc2l0dWF0aW9uIHRoZQorICAgICAgICB2YWx1ZSBtX2xhc3RGbHVzaFRp
bWUgd2FzIG5ldmVyIHVwZGF0ZWQgc28gYSBuZXcgZmx1c2ggd2FzIGFsd2F5cworICAgICAgICBy
ZXNjaGVkdWxlZC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9ndGsvTGF5ZXJUcmVl
SG9zdEd0ay5jcHA6CisgICAgICAgIChXZWJLaXQ6OkxheWVyVHJlZUhvc3RHdGs6OmZsdXNoQW5k
UmVuZGVyTGF5ZXJzKToKKwogMjAxMy0wNi0yMCAgU2VyZ2lvIENvcnJlaWEgIDxzZXJnaW8uY29y
cmVpYUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIFtXSzJdIExvb3BpbmcgZm9yIEVJTlRSIG9u
IGNsb3NlKCkgaXMgaW5jb3JyZWN0IGZvciBMaW51eCwgYXQgbGVhc3QKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvTGF5ZXJUcmVlSG9zdEd0ay5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0xheWVyVHJlZUhvc3RHdGsu
Y3BwCmluZGV4IDA0Njc5YmQ4ZDNmZDhmZDE3YWQ0ZTlhNTM0MzI2YTAzODJjNzI4Y2UuLmQzMDZl
YTc4NTAyM2EyOWY4YjAwMjJiMWVhNWJmODgwNTc4NDUwYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvTGF5ZXJUcmVlSG9zdEd0ay5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9MYXllclRyZWVIb3N0R3RrLmNw
cApAQCAtMzYwLDEwICszNjAsMTAgQEAgdm9pZCBMYXllclRyZWVIb3N0R3RrOjpmbHVzaEFuZFJl
bmRlckxheWVycygpCiAgICAgaWYgKCFjb250ZXh0IHx8ICFjb250ZXh0LT5tYWtlQ29udGV4dEN1
cnJlbnQoKSkKICAgICAgICAgcmV0dXJuOwogCisgICAgbV9sYXN0Rmx1c2hUaW1lID0gY3VycmVu
dFRpbWUoKTsKICAgICBpZiAoIWZsdXNoUGVuZGluZ0xheWVyQ2hhbmdlcygpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBtX2xhc3RGbHVzaFRpbWUgPSBjdXJyZW50VGltZSgpOwogICAgIC8vIE91
ciBtb2RlbCBpcyB2ZXJ5IHNpbXBsZS4gV2UgYWx3YXlzIGNvbXBvc2l0ZSBhbmQgcmVuZGVyIHRo
ZSB0cmVlIGltbWVkaWF0ZWx5IGFmdGVyIHVwZGF0aW5nIGl0LgogICAgIGNvbXBvc2l0ZUxheWVy
c1RvQ29udGV4dCgpOwogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>