<?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>85543</bug_id>
          
          <creation_ts>2012-05-03 14:16:48 -0700</creation_ts>
          <short_desc>Heap::reportAbandonedObjectGraph should not hasten an allocation-triggered collection</short_desc>
          <delta_ts>2012-05-08 09:25:38 -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>JavaScriptCore</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></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="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>615619</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-05-03 14:16:48 -0700</bug_when>
    <thetext>Currently reportAbandonedObjectGraph causes the Heap to think it is closer to its allocation limit for the current cycle, thus hastening an allocation-triggered collection. In reality, it should just affect the opportunistic GC timer. We should track the bytes we think have been abandoned and the bytes that have been allocated separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>615657</commentid>
    <comment_count>1</comment_count>
      <attachid>140098</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-05-03 14:52:32 -0700</bug_when>
    <thetext>Created attachment 140098
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>615700</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-05-03 15:30:57 -0700</bug_when>
    <thetext>Committed r116025: &lt;http://trac.webkit.org/changeset/116025&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>615708</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-05-03 15:37:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/11377509&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618563</commentid>
    <comment_count>4</comment_count>
      <attachid>140098</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-05-08 09:25:38 -0700</bug_when>
    <thetext>Comment on attachment 140098
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=140098&amp;action=review

&gt; Source/JavaScriptCore/heap/Heap.cpp:795
&gt; +        m_bytesAbandoned = 0;

Why do you only reset m_bytesAbandoned to 0 during a forced sweep? Even without a forced sweep, a normal GC, followed by allocation, will reclaim / recycle abandoned bytes.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140098</attachid>
            <date>2012-05-03 14:52:32 -0700</date>
            <delta_ts>2012-05-08 09:25:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85543-20120503145230.patch</filename>
            <type>text/plain</type>
            <size>4207</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE1OTczCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
MjJhODczOWE1ZTIxMDQ4YzIyOGU5MjY0NDc4ZmFjMzVhYjUzMjc4Li5jN2VhZmEyYzNjNGJlOWFm
MGM5NDIyMTViNTc3MjhjZGU4ODE1ZmE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOSBAQAorMjAxMi0wNS0wMyAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdAYXBw
bGUuY29tPgorCisgICAgICAgIEhlYXA6OnJlcG9ydEFiYW5kb25lZE9iamVjdEdyYXBoIHNob3Vs
ZCBub3QgaGFzdGVuIGFuIGFsbG9jYXRpb24tdHJpZ2dlcmVkIGNvbGxlY3Rpb24KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1NTQzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudGx5IHJlcG9ydEFi
YW5kb25lZE9iamVjdEdyYXBoIGNhdXNlcyB0aGUgSGVhcCB0byB0aGluayBpdCBpcyBjbG9zZXIg
dG8gaXRzIAorICAgICAgICBhbGxvY2F0aW9uIGxpbWl0IGZvciB0aGUgY3VycmVudCBjeWNsZSwg
dGh1cyBoYXN0ZW5pbmcgYW4gYWxsb2NhdGlvbi10cmlnZ2VyZWQgY29sbGVjdGlvbi4gCisgICAg
ICAgIEluIHJlYWxpdHksIGl0IHNob3VsZCBqdXN0IGFmZmVjdCB0aGUgb3Bwb3J0dW5pc3RpYyBH
QyB0aW1lci4gV2Ugc2hvdWxkIHRyYWNrIHRoZSBieXRlcyAKKyAgICAgICAgd2UgdGhpbmsgaGF2
ZSBiZWVuIGFiYW5kb25lZCBhbmQgdGhlIGJ5dGVzIHRoYXQgaGF2ZSBiZWVuIGFsbG9jYXRlZCBz
ZXBhcmF0ZWx5LgorCisgICAgICAgICogaGVhcC9IZWFwLmNwcDogQWRkZWQgYSBuZXcgZmllbGQg
bV9hYmFuZG9uZWRCeXRlcyB0byBIZWFwIHRvIGtlZXAgdHJhY2sgb2YgaG93IG11Y2ggCisgICAg
ICAgIHdlIHRoaW5rIHdlJ3ZlIGFiYW5kb25lZC4KKyAgICAgICAgKEpTQzo6SGVhcDo6SGVhcCk6
IAorICAgICAgICAoSlNDOjpIZWFwOjpyZXBvcnRBYmFuZG9uZWRPYmplY3RHcmFwaCk6IAorICAg
ICAgICAoSlNDKToKKyAgICAgICAgKEpTQzo6SGVhcDo6ZGlkQWJhbmRvbik6IEFkZGVkIHRoaXMg
ZnVuY3Rpb24gZm9yIHJlcG9ydEFiYW5kb25lZE9iamVjdEdyYXBoIHRvIGNhbGwgCisgICAgICAg
IHJhdGhlciB0aGFuIGRpZEFsbG9jYXRlLiBXb3JrcyB0aGUgc2FtZSBhcyBkaWRBbGxvY2F0ZSwg
YnV0IG1vZGlmaWVzIGJ5dGVzIGFiYW5kb25lZCByYXRoZXIgCisgICAgICAgIHRoYW4gYnl0ZXMg
YWxsb2NhdGVkLiBBbHNvIG5vdGlmaWVzIHRoZSB0aW1lciwgc3VtbWluZyB0aGUgdHdvIHZhbHVl
cyB0b2dldGhlci4KKyAgICAgICAgKEpTQzo6SGVhcDo6Y29sbGVjdCk6CisgICAgICAgIChKU0M6
OkhlYXA6OmRpZEFsbG9jYXRlKTogTm93IGFkZHMgdGhlIGJ5dGVzIGFsbG9jYXRlZCBhbmQgYnl0
ZXMgYWJhbmRvbmVkIHdoZW4gcmVwb3J0aW5nIAorICAgICAgICB0byBHQ0FjdGl2aXR5Q2FsbGJh
Y2suCisgICAgICAgICogaGVhcC9IZWFwLmg6CisgICAgICAgIChIZWFwKToKKwogMjAxMi0wNS0w
MiAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgU29ydCBFTkFCTEVf
IGRlZmluZXMgaW4gRmVhdHVyZURlZmluZXMueGNjb25maWcgZmlsZXMgdG8gbWFrZSB0aGVtIGVh
c2llciB0byBjb21wYXJlIHdpdGggb25lIGFub3RoZXIgKGFuZCBlYXNpZXIgdG8gYXV0b2dlbmVy
YXRlKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAppbmRleCAwZTM3OGVmYWJjNWE2ZWEy
ZTBiZDY1YzljYmNlNDMyOTVkMDZjMjA5Li5kMGRiYzMxNzI1ZWY4NTYxYzc2ZDg3ZGE5NmMxMjhk
NWVjNTI0NjNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcApAQCAtMzE2LDYgKzMx
Niw3IEBAIEhlYXA6OkhlYXAoSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBIZWFwU2l6ZSBoZWFw
U2l6ZSkKICAgICAsIG1fc2l6ZUFmdGVyTGFzdENvbGxlY3QoMCkKICAgICAsIG1fYnl0ZXNBbGxv
Y2F0ZWRMaW1pdChtX21pbkJ5dGVzUGVyQ3ljbGUpCiAgICAgLCBtX2J5dGVzQWxsb2NhdGVkKDAp
CisgICAgLCBtX2J5dGVzQWJhbmRvbmVkKDApCiAgICAgLCBtX29wZXJhdGlvbkluUHJvZ3Jlc3Mo
Tm9PcGVyYXRpb24pCiAgICAgLCBtX29iamVjdFNwYWNlKHRoaXMpCiAgICAgLCBtX3N0b3JhZ2VT
cGFjZSh0aGlzKQpAQCAtNDAxLDcgKzQwMiwxMyBAQCB2b2lkIEhlYXA6OnJlcG9ydEFiYW5kb25l
ZE9iamVjdEdyYXBoKCkKICAgICAvLyBiZWVuIGFiYW5kb25lZCwgdGhlIG5leHQgY29sbGVjdGlv
biBoYXMgdGhlIHBvdGVudGlhbCB0byAKICAgICAvLyBiZSBtb3JlIHByb2ZpdGFibGUuIFNpbmNl
IGFsbG9jYXRpb24gaXMgdGhlIHRyaWdnZXIgZm9yIGNvbGxlY3Rpb24sIAogICAgIC8vIHdlIGhh
c3RlbiB0aGUgbmV4dCBjb2xsZWN0aW9uIGJ5IHByZXRlbmRpbmcgdGhhdCB3ZSd2ZSBhbGxvY2F0
ZWQgbW9yZSBtZW1vcnkuIAotICAgIGRpZEFsbG9jYXRlKGFiYW5kb25lZEJ5dGVzKTsKKyAgICBk
aWRBYmFuZG9uKGFiYW5kb25lZEJ5dGVzKTsKK30KKwordm9pZCBIZWFwOjpkaWRBYmFuZG9uKHNp
emVfdCBieXRlcykKK3sKKyAgICBtX2FjdGl2aXR5Q2FsbGJhY2stPmRpZEFsbG9jYXRlKG1fYnl0
ZXNBbGxvY2F0ZWQgKyBtX2J5dGVzQWJhbmRvbmVkKTsKKyAgICBtX2J5dGVzQWJhbmRvbmVkICs9
IGJ5dGVzOwogfQogCiB2b2lkIEhlYXA6OnByb3RlY3QoSlNWYWx1ZSBrKQpAQCAtNzg1LDYgKzc5
Miw3IEBAIHZvaWQgSGVhcDo6Y29sbGVjdChTd2VlcFRvZ2dsZSBzd2VlcFRvZ2dsZSkKICAgICAg
ICAgc3dlZXAoKTsKICAgICAgICAgbV9vYmplY3RTcGFjZS5zaHJpbmsoKTsKICAgICAgICAgbV93
ZWFrU2V0LnNocmluaygpOworICAgICAgICBtX2J5dGVzQWJhbmRvbmVkID0gMDsKICAgICB9CiAK
ICAgICAvLyBUbyBhdm9pZCBwYXRob2xvZ2ljYWwgR0MgY2h1cm4gaW4gbGFyZ2UgaGVhcHMsIHdl
IHNldCB0aGUgbmV3IGFsbG9jYXRpb24gCkBAIC04MjYsNyArODM0LDcgQEAgR0NBY3Rpdml0eUNh
bGxiYWNrKiBIZWFwOjphY3Rpdml0eUNhbGxiYWNrKCkKIAogdm9pZCBIZWFwOjpkaWRBbGxvY2F0
ZShzaXplX3QgYnl0ZXMpCiB7Ci0gICAgbV9hY3Rpdml0eUNhbGxiYWNrLT5kaWRBbGxvY2F0ZSht
X2J5dGVzQWxsb2NhdGVkKTsKKyAgICBtX2FjdGl2aXR5Q2FsbGJhY2stPmRpZEFsbG9jYXRlKG1f
Ynl0ZXNBbGxvY2F0ZWQgKyBtX2J5dGVzQWJhbmRvbmVkKTsKICAgICBtX2J5dGVzQWxsb2NhdGVk
ICs9IGJ5dGVzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9I
ZWFwLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmgKaW5kZXggMGM3YzIwMmRm
NTlkZmI1N2MyNGFmNzYyNWI3OGIwNDFhZjJkODU5Yi4uMTBmZGIwN2JlYjBkYjk0M2U0MTdlMDMw
MzI5YzI5ZWY2NDkzN2JkYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAv
SGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuaApAQCAtMTYwLDYg
KzE2MCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBKU19FWFBPUlRfUFJJVkFURSB2b2lk
IGRpc2NhcmRBbGxDb21waWxlZENvZGUoKTsKIAogICAgICAgICB2b2lkIGRpZEFsbG9jYXRlKHNp
emVfdCk7CisgICAgICAgIHZvaWQgZGlkQWJhbmRvbihzaXplX3QpOwogCiAgICAgICAgIGJvb2wg
aXNQYWdlZE91dChkb3VibGUgZGVhZGxpbmUpOwogCkBAIC0yMTEsNiArMjEyLDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiAKICAgICAgICAgc2l6ZV90IG1fYnl0ZXNBbGxvY2F0ZWRMaW1pdDsKICAgICAg
ICAgc2l6ZV90IG1fYnl0ZXNBbGxvY2F0ZWQ7CisgICAgICAgIHNpemVfdCBtX2J5dGVzQWJhbmRv
bmVkOwogICAgICAgICAKICAgICAgICAgT3BlcmF0aW9uSW5Qcm9ncmVzcyBtX29wZXJhdGlvbklu
UHJvZ3Jlc3M7CiAgICAgICAgIE1hcmtlZFNwYWNlIG1fb2JqZWN0U3BhY2U7Cg==
</data>
<flag name="review"
          id="145870"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
          </attachment>
      

    </bug>

</bugzilla>