<?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>134109</bug_id>
          
          <creation_ts>2014-06-20 10:34:16 -0700</creation_ts>
          <short_desc>Increase priority on SharedTimer source</short_desc>
          <delta_ts>2017-03-11 10:51:24 -0800</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>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andre Moreira Magalhaes">andrunko</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>clopez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mrobinson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1016954</commentid>
    <comment_count>0</comment_count>
    <who name="Andre Moreira Magalhaes">andrunko</who>
    <bug_when>2014-06-20 10:34:16 -0700</bug_when>
    <thetext>While running webkit on a Debian virtual machine with limited resources I stumbled upon an issue where JS setTimeout callbacks were not being properly invoked due to machine limitations and the usage of a low priority on setTimeout timers.

After discussing the issue with Gustavo (kov), we decided to increase the SharedTimer priority to use the default glib priority. I would like to start a discussion on whether this is the proper way to fix this issue.

Patch to come.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1016959</commentid>
    <comment_count>1</comment_count>
      <attachid>233433</attachid>
    <who name="Andre Moreira Magalhaes">andrunko</who>
    <bug_when>2014-06-20 10:38:41 -0700</bug_when>
    <thetext>Created attachment 233433
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1016961</commentid>
    <comment_count>2</comment_count>
      <attachid>233434</attachid>
    <who name="Andre Moreira Magalhaes">andrunko</who>
    <bug_when>2014-06-20 10:42:41 -0700</bug_when>
    <thetext>Created attachment 233434
Patch with proper changelog

Oops, forgot to update changelog, new patch in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018958</commentid>
    <comment_count>3</comment_count>
      <attachid>233434</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2014-06-27 08:19:13 -0700</bug_when>
    <thetext>Comment on attachment 233434
Patch with proper changelog

This would be a problem for webkit1, but is a proper fix for the webkit2 model IMO, since we do not compete with GTK+ mainloop sources anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018964</commentid>
    <comment_count>4</comment_count>
      <attachid>233434</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-06-27 08:51:28 -0700</bug_when>
    <thetext>Comment on attachment 233434
Patch with proper changelog

Clearing flags on attachment: 233434

Committed r170529: &lt;http://trac.webkit.org/changeset/170529&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018965</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-06-27 08:51:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022717</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2014-07-16 07:23:26 -0700</bug_when>
    <thetext>This caused a performance regression on the test Animation/balls:FrameRate. See: https://bugs.webkit.org/show_bug.cgi?id=134972</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022722</commentid>
    <comment_count>7</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2014-07-16 08:01:31 -0700</bug_when>
    <thetext>The priority of the timers is very sensitive and can negatively affect animations, so I recommend we roll this out until we understand the isseu.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022731</commentid>
    <comment_count>8</comment_count>
    <who name="Andre Moreira Magalhaes">andrunko</who>
    <bug_when>2014-07-16 08:43:16 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; The priority of the timers is very sensitive and can negatively affect animations, so I recommend we roll this out until we understand the isseu.

I agree here. I actually opened this bug more to start a discussion on the proper priorities to use for the various timers/sources as we had some issues with JS being starved and thus breaking some webapps that relied on setTimeout calls. This issue only happened in a very specific usecase where we had a browser running in a VM with limited resources.

I vote for reverting this but would like to see your opinion on what is the best approach to solve the issue with JS being starved when running on limited resources.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023956</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2014-07-22 08:07:52 -0700</bug_when>
    <thetext>I reverted r170529 on r171343 &lt;https://trac.webkit.org/r171343&gt; because it caused a ~10% performance regression on the perf test Animation/balls: https://webkit.org/b/134972


Reopening this bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233433</attachid>
            <date>2014-06-20 10:38:41 -0700</date>
            <delta_ts>2014-06-20 10:42:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-Increase-priority-on-SharedTimer-source.patch</filename>
            <type>text/plain</type>
            <size>1667</size>
            <attacher name="Andre Moreira Magalhaes">andrunko</attacher>
            
              <data encoding="base64">RnJvbSA3ODNjYTkxZGJkNjIyMjY3NzFmMjUyMDRmOTk0ZTc2ZjdiMThmODNkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmUgTW9yZWlyYSBNYWdhbGhhZXMgKGFuZHJ1bmtvKSIg
PGFuZHJlLm1hZ2FsaGFlc0Bjb2xsYWJvcmEuY28udWs+CkRhdGU6IEZyaSwgMjAgSnVuIDIwMTQg
MTQ6MjY6MzEgLTAzMDAKU3ViamVjdDogW1BBVENIXSBJbmNyZWFzZSBwcmlvcml0eSBvbiBTaGFy
ZWRUaW1lciBzb3VyY2UuCiBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzQxMDkKCldoaWxlIHJ1bm5pbmcgd2Via2l0IG9uIGEgRGViaWFuIHZpcnR1YWwgbWFjaGluZSBJ
IHN0dW1ibGVkIHVwb24gYW4gaXNzdWUgd2hlcmUgSlMKc2V0VGltZW91dCBjYWxsYmFja3Mgd2Vy
ZSBub3QgYmVpbmcgcHJvcGVybHkgaW52b2tlZCBkdWUgdG8gbWFjaGluZSBsaW1pdGF0aW9ucyBh
bmQgdGhlCnVzYWdlIG9mIGEgbG93IHByaW9yaXR5IG9uIHNldFRpbWVvdXQgdGltZXJzLgoKVGhp
cyBwYXRjaCBpbmNyZWFzZXMgdGhlIFNoYXJlZFRpbWVyIHNvdXJjZSBwcmlvcml0eSB0byB1c2Ug
dGhlIGRlZmF1bHQgZ2xpYiBwcmlvcml0eSB3aGljaApmaXhlcyB0aGUgaXNzdWUsIG1ha2luZyBz
ZXRUaW1lb3V0IEpTIGNhbGxzIHdvcmsgcHJvcGVybHkgb24gdGhlIHRlc3QgZW52aXJvbm1lbnQu
CgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiogcGxhdGZvcm0vZ3RrL1NoYXJlZFRpbWVy
R3RrLmNwcDoKKFdlYkNvcmU6OnNldFNoYXJlZFRpbWVyRmlyZUludGVydmFsKToKLS0tCiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvU2hhcmVkVGltZXJHdGsuY3BwIHwgMiArLQogMSBmaWxl
IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1NoYXJlZFRpbWVyR3RrLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9TaGFyZWRUaW1lckd0ay5jcHAKaW5kZXggZWM5MGZkNC4uNzdhY2I5
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1NoYXJlZFRpbWVyR3Rr
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvU2hhcmVkVGltZXJHdGsuY3Bw
CkBAIC00OCw3ICs0OCw3IEBAIHZvaWQgc2V0U2hhcmVkVGltZXJGaXJlSW50ZXJ2YWwoZG91Ymxl
IGludGVydmFsKQogICAgIEFTU0VSVChzaGFyZWRUaW1lckZpcmVkRnVuY3Rpb24pOwogCiAgICAg
Z1NoYXJlZFRpbWVyLnNjaGVkdWxlQWZ0ZXJEZWxheSgiW1dlYktpdF0gc2hhcmVkVGltZXJUaW1l
b3V0Q2FsbGJhY2siLCBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4oc2hhcmVkVGltZXJGaXJlZEZ1bmN0
aW9uKSwKLSAgICAgICAgc3RkOjpjaHJvbm86OmR1cmF0aW9uX2Nhc3Q8c3RkOjpjaHJvbm86Om1p
bGxpc2Vjb25kcz4oc3RkOjpjaHJvbm86OmR1cmF0aW9uPGRvdWJsZT4oaW50ZXJ2YWwpKSwgR0RL
X1BSSU9SSVRZX1JFRFJBVyk7CisgICAgICAgIHN0ZDo6Y2hyb25vOjpkdXJhdGlvbl9jYXN0PHN0
ZDo6Y2hyb25vOjptaWxsaXNlY29uZHM+KHN0ZDo6Y2hyb25vOjpkdXJhdGlvbjxkb3VibGU+KGlu
dGVydmFsKSksIEdfUFJJT1JJVFlfREVGQVVMVCk7CiB9CiAKIHZvaWQgc3RvcFNoYXJlZFRpbWVy
KCkKLS0gCjEuOS4xCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233434</attachid>
            <date>2014-06-20 10:42:41 -0700</date>
            <delta_ts>2014-06-27 08:51:27 -0700</delta_ts>
            <desc>Patch with proper changelog</desc>
            <filename>0001-Increase-priority-on-SharedTimer-source.patch</filename>
            <type>text/plain</type>
            <size>2793</size>
            <attacher name="Andre Moreira Magalhaes">andrunko</attacher>
            
              <data encoding="base64">RnJvbSAyNWM0Zjk0YzE1MTNhNWU1NjAwM2RlYmRhNWQwNDc1YTI3ZTNiMjc1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmUgTW9yZWlyYSBNYWdhbGhhZXMgKGFuZHJ1bmtvKSIg
PGFuZHJlLm1hZ2FsaGFlc0Bjb2xsYWJvcmEuY28udWs+CkRhdGU6IEZyaSwgMjAgSnVuIDIwMTQg
MTQ6MjY6MzEgLTAzMDAKU3ViamVjdDogW1BBVENIXSBJbmNyZWFzZSBwcmlvcml0eSBvbiBTaGFy
ZWRUaW1lciBzb3VyY2UuCiBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzQxMDkKCldoaWxlIHJ1bm5pbmcgd2Via2l0IG9uIGEgRGViaWFuIHZpcnR1YWwgbWFjaGluZSBJ
IHN0dW1ibGVkIHVwb24gYW4gaXNzdWUgd2hlcmUgSlMKc2V0VGltZW91dCBjYWxsYmFja3Mgd2Vy
ZSBub3QgYmVpbmcgcHJvcGVybHkgaW52b2tlZCBkdWUgdG8gbWFjaGluZSBsaW1pdGF0aW9ucyBh
bmQgdGhlCnVzYWdlIG9mIGEgbG93IHByaW9yaXR5IG9uIHNldFRpbWVvdXQgdGltZXJzLgoKVGhp
cyBwYXRjaCBpbmNyZWFzZXMgdGhlIFNoYXJlZFRpbWVyIHNvdXJjZSBwcmlvcml0eSB0byB1c2Ug
dGhlIGRlZmF1bHQgZ2xpYiBwcmlvcml0eSB3aGljaApmaXhlcyB0aGUgaXNzdWUsIG1ha2luZyBz
ZXRUaW1lb3V0IEpTIGNhbGxzIHdvcmsgcHJvcGVybHkgb24gdGhlIHRlc3QgZW52aXJvbm1lbnQu
CgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiogcGxhdGZvcm0vZ3RrL1NoYXJlZFRpbWVy
R3RrLmNwcDoKKFdlYkNvcmU6OnNldFNoYXJlZFRpbWVyRmlyZUludGVydmFsKToKLS0tCiBTb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgIHwgMTcgKysrKysrKysr
KysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TaGFyZWRUaW1lckd0ay5jcHAg
fCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0p
CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCmluZGV4IDJiODUyNjAuLjdmYTI1Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwy
MCBAQAorMjAxNC0wNi0yMCAgQW5kcmUgTW9yZWlyYSBNYWdhbGhhZXMgICA8YW5kcmUubWFnYWxo
YWVzQGNvbGxhYm9yYS5jby51az4KKworICAgICAgICBJbmNyZWFzZSBwcmlvcml0eSBvbiBTaGFy
ZWRUaW1lciBzb3VyY2UuCisgICAgICAgIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzNDEwOQorCisgICAgICAgIFdoaWxlIHJ1bm5pbmcgd2Via2l0IG9uIGEgRGViaWFu
IHZpcnR1YWwgbWFjaGluZSBJIHN0dW1ibGVkIHVwb24gYW4gaXNzdWUgd2hlcmUgSlMKKyAgICAg
ICAgc2V0VGltZW91dCBjYWxsYmFja3Mgd2VyZSBub3QgYmVpbmcgcHJvcGVybHkgaW52b2tlZCBk
dWUgdG8gbWFjaGluZSBsaW1pdGF0aW9ucyBhbmQgdGhlCisgICAgICAgIHVzYWdlIG9mIGEgbG93
IHByaW9yaXR5IG9uIHNldFRpbWVvdXQgdGltZXJzLgorCisgICAgICAgIFRoaXMgcGF0Y2ggaW5j
cmVhc2VzIHRoZSBTaGFyZWRUaW1lciBzb3VyY2UgcHJpb3JpdHkgdG8gdXNlIHRoZSBkZWZhdWx0
IGdsaWIgcHJpb3JpdHkgd2hpY2gKKyAgICAgICAgZml4ZXMgdGhlIGlzc3VlLCBtYWtpbmcgc2V0
VGltZW91dCBKUyBjYWxscyB3b3JrIHByb3Blcmx5IG9uIHRoZSB0ZXN0IGVudmlyb25tZW50Lgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3RrL1NoYXJlZFRpbWVyR3RrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNldFNoYXJlZFRp
bWVyRmlyZUludGVydmFsKToKKwogMjAxNC0wNi0xOSAgcGVhdm9Ab3V0bG9vay5jb20gIDxwZWF2
b0BvdXRsb29rLmNvbT4KIAogICAgICAgICBbQ3VybF0gQ29tcGlsZSBlcnJvcnMgcmVsYXRlZCB0
byBodHRwIGhlYWRlciBmaWVsZCBuYW1lcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9TaGFyZWRUaW1lckd0ay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvU2hhcmVkVGltZXJHdGsuY3BwCmluZGV4IGVjOTBmZDQuLjc3YWNiOTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TaGFyZWRUaW1lckd0ay5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1NoYXJlZFRpbWVyR3RrLmNwcApAQCAtNDgsNyArNDgs
NyBAQCB2b2lkIHNldFNoYXJlZFRpbWVyRmlyZUludGVydmFsKGRvdWJsZSBpbnRlcnZhbCkKICAg
ICBBU1NFUlQoc2hhcmVkVGltZXJGaXJlZEZ1bmN0aW9uKTsKIAogICAgIGdTaGFyZWRUaW1lci5z
Y2hlZHVsZUFmdGVyRGVsYXkoIltXZWJLaXRdIHNoYXJlZFRpbWVyVGltZW91dENhbGxiYWNrIiwg
c3RkOjpmdW5jdGlvbjx2b2lkKCk+KHNoYXJlZFRpbWVyRmlyZWRGdW5jdGlvbiksCi0gICAgICAg
IHN0ZDo6Y2hyb25vOjpkdXJhdGlvbl9jYXN0PHN0ZDo6Y2hyb25vOjptaWxsaXNlY29uZHM+KHN0
ZDo6Y2hyb25vOjpkdXJhdGlvbjxkb3VibGU+KGludGVydmFsKSksIEdES19QUklPUklUWV9SRURS
QVcpOworICAgICAgICBzdGQ6OmNocm9ubzo6ZHVyYXRpb25fY2FzdDxzdGQ6OmNocm9ubzo6bWls
bGlzZWNvbmRzPihzdGQ6OmNocm9ubzo6ZHVyYXRpb248ZG91YmxlPihpbnRlcnZhbCkpLCBHX1BS
SU9SSVRZX0RFRkFVTFQpOwogfQogCiB2b2lkIHN0b3BTaGFyZWRUaW1lcigpCi0tIAoxLjkuMQoK
</data>

          </attachment>
      

    </bug>

</bugzilla>