<?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>38368</bug_id>
          
          <creation_ts>2010-04-29 19:44:07 -0700</creation_ts>
          <short_desc>When FastMalloc Returns memory often left with lots of small spans</short_desc>
          <delta_ts>2010-05-03 19:40:42 -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>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Stephanie Lewis">slewis</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
    
    <cc>ggaren</cc>
    
    <cc>slewis</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>219336</commentid>
    <comment_count>0</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2010-04-29 19:44:07 -0700</bug_when>
    <thetext>When FastMalloc Returns memory we&apos;re often left with lots of 1 page spans and none of the large sizes.  Change the scavenging algorithm to always keep some large size spans around.  Also change it distribute the returns among the list more equally. 
&lt;rdar://problem/7834433&gt; REGRESSSION: 1.5% PLT regression due to 56028 (return memory quicker).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219341</commentid>
    <comment_count>1</comment_count>
      <attachid>54775</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2010-04-29 19:53:54 -0700</bug_when>
    <thetext>Created attachment 54775
patch

Attaching Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219342</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-29 20:05:50 -0700</bug_when>
    <thetext>Attachment 54775 did not build on mac:
Build output: http://webkit-commit-queue.appspot.com/results/1792206</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219343</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-29 20:06:46 -0700</bug_when>
    <thetext>Attachment 54775 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
JavaScriptCore/wtf/FastMalloc.cpp:1281:  Missing spaces around /  [whitespace/operators] [3]
JavaScriptCore/wtf/FastMalloc.cpp:1546:  Extra space before )  [whitespace/parens] [2]
Total errors found: 2 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219344</commentid>
    <comment_count>4</comment_count>
      <attachid>54776</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2010-04-29 20:23:10 -0700</bug_when>
    <thetext>Created attachment 54776
second patch

fixed some issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219345</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-29 20:28:15 -0700</bug_when>
    <thetext>Attachment 54776 did not build on mac:
Build output: http://webkit-commit-queue.appspot.com/results/1935031</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219553</commentid>
    <comment_count>6</comment_count>
      <attachid>54776</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-30 11:48:23 -0700</bug_when>
    <thetext>Comment on attachment 54776
second patch

The EWS thinks this will break leopard:
fzzgiiisjukfwleasczjmdxaevcz/JavaScriptCorePrefix.h -c /Users/eseidel/Projects/MacEWS/JavaScriptCore/wtf/FastMalloc.cpp -o /Users/eseidel/Projects/MacEWS/WebKitBuild/JavaScriptCore.build/Release/JavaScriptCore.build/Objects-normal/i386/FastMalloc.o
cc1plus: warnings being treated as errors
/Users/eseidel/Projects/MacEWS/JavaScriptCore/wtf/FastMalloc.cpp:1281: warning: implicit conversion shortens 64-bit value into a 32-bit value
/Users/eseidel/Projects/MacEWS/JavaScriptCore/wtf/FastMalloc.cpp: In member function ‘void WTF::TCMalloc_PageHeap::scavenge()’:
/Users/eseidel/Projects/MacEWS/JavaScriptCore/wtf/FastMalloc.cpp:1546: warning: implicit conversion shortens 64-bit value into a 32-bit value
distcc[85602] ERROR: compile /Users/eseidel/Projects/MacEWS/JavaScriptCore/wtf/FastMalloc.cpp on localhost failed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>219670</commentid>
    <comment_count>7</comment_count>
      <attachid>54841</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2010-04-30 17:39:22 -0700</bug_when>
    <thetext>Created attachment 54841
patch with correct fix

and now it builds on 32bit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220301</commentid>
    <comment_count>8</comment_count>
      <attachid>54841</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2010-05-03 14:47:43 -0700</bug_when>
    <thetext>Comment on attachment 54841
patch with correct fix

I think the &quot;l&quot; postfix is wrong, since it will give you a long where you want a floating point number. The simplest way to appease the 64-bit warning is probably to use float, since it&apos;s 32-bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220341</commentid>
    <comment_count>9</comment_count>
      <attachid>54971</attachid>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2010-05-03 15:52:42 -0700</bug_when>
    <thetext>Created attachment 54971
patch

one more time</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220355</commentid>
    <comment_count>10</comment_count>
      <attachid>54971</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2010-05-03 16:24:17 -0700</bug_when>
    <thetext>Comment on attachment 54971
patch

r=me

You can just declare &quot;j&quot; to be size_t, to avoid the static_cast.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220422</commentid>
    <comment_count>11</comment_count>
    <who name="Stephanie Lewis">slewis</who>
    <bug_when>2010-05-03 19:40:42 -0700</bug_when>
    <thetext>Committed http://trac.webkit.org/changeset/58730</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54775</attachid>
            <date>2010-04-29 19:53:54 -0700</date>
            <delta_ts>2010-04-29 20:23:10 -0700</delta_ts>
            <desc>patch</desc>
            <filename>FastMallocPatch2.txt</filename>
            <type>text/plain</type>
            <size>4091</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU4NTU0KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDQtMjkgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM4MzY4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83ODM0NDMzPiBSRUdSRVNTU0lPTjog
MS41JSBQTFQgcmVncmVzc2lvbiBkdWUgdG8gNTYwMjggCisgICAgICAgIChyZXR1cm4gbWVtb3J5
IHF1aWNrZXIpLgorICAgICAgICBJbnN0ZWFkIG9mIHJldHVybmluZyBldmVyeXRoaW5nIGJ1dCB0
aGUgc21hbGxlc3Qgc3BhbnMgc3ByZWFkIG91dCAKKyAgICAgICAgdGhlIHNwYW5zIGtlcHQgb3Zl
ciBzZXZlcmFsIHNpemUgbGlzdHMuCisKKyAgICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6Cisg
ICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpzY2F2ZW5nZSk6CisKIDIwMTAtMDQtMjkg
IE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBH
ZW9mZiBHYXJlbi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9GYXN0TWFsbG9jLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDU4
NTM4KQorKysgSmF2YVNjcmlwdENvcmUvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMjczLDggKzEyNzMsMTIgQEAgc3RhdGljIGNvbnN0IGludCBrU2NhdmVuZ2VEZWxheUlu
U2Vjb25kcwogLy8gc2NhdmVuZ2UuCiBzdGF0aWMgY29uc3QgZmxvYXQga1NjYXZlbmdlUGVyY2Vu
dGFnZSA9IC41ZjsKIAotLy8gTnVtYmVyIG9mIGZyZWUgY29tbWl0dGVkIHBhZ2VzIHRoYXQgd2Ug
d2FudCB0byBrZWVwIGFyb3VuZC4KLXN0YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29t
bWl0dGVkUGFnZUNvdW50ID0gNTEyOworLy8gbnVtYmVyIG9mIHNwYW4gbGlzdHMgdG8ga2VlcCBz
cGFucyBpbiB3aGVuIG1lbW9yeSBpcyByZXR1cm5lZC4KK3N0YXRpYyBjb25zdCBpbnQga01pblNw
YW5MaXN0c1dpdGhTcGFucyA9IDMyOworCisvLyBOdW1iZXIgb2YgZnJlZSBjb21taXR0ZWQgcGFn
ZXMgdGhhdCB3ZSB3YW50IHRvIGtlZXAgYXJvdW5kLiAgVGhlIG1pbmltdW0gbnVtYmVyIG9mIHBh
Z2VzIHVzZWQgd2hlbiB0aGVyZQorLy8gaXMgMSBzcGFuIGluIGVhY2ggb2YgdGhlIGZpcnN0IGtN
aW5TcGFuTGlzdHNXaXRoU3BhbnMgc3Bhbmxpc3RzLiAgQ3VycmVudGx5IDUyOCBwYWdlcy4KK3N0
YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29tbWl0dGVkUGFnZUNvdW50ID0ga01pblNw
YW5MaXN0c1dpdGhTcGFucyooKDEuMCtrTWluU3Bhbkxpc3RzV2l0aFNwYW5zKS8yLjApOwogCiAj
ZW5kaWYKIApAQCAtMTUzNCwyMCArMTUzOCwyNSBAQCB2b2lkIFRDTWFsbG9jX1BhZ2VIZWFwOjpz
Y2F2ZW5nZSgpCiAgICAgc2l6ZV90IHBhZ2VzVG9SZWxlYXNlID0gbWluX2ZyZWVfY29tbWl0dGVk
X3BhZ2VzX3NpbmNlX2xhc3Rfc2NhdmVuZ2VfICoga1NjYXZlbmdlUGVyY2VudGFnZTsKICAgICBz
aXplX3QgdGFyZ2V0UGFnZUNvdW50ID0gc3RkOjptYXg8c2l6ZV90PihrTWluaW11bUZyZWVDb21t
aXR0ZWRQYWdlQ291bnQsIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyAtIHBhZ2VzVG9SZWxlYXNlKTsK
IAotICAgIGZvciAoaW50IGkgPSBrTWF4UGFnZXM7IGkgPj0gMCAmJiBmcmVlX2NvbW1pdHRlZF9w
YWdlc18gPiB0YXJnZXRQYWdlQ291bnQ7IGktLSkgewotICAgICAgICBTcGFuTGlzdCogc2xpc3Qg
PSAoc3RhdGljX2Nhc3Q8c2l6ZV90PihpKSA9PSBrTWF4UGFnZXMpID8gJmxhcmdlXyA6ICZmcmVl
X1tpXTsKLSAgICAgICAgd2hpbGUgKCFETExfSXNFbXB0eSgmc2xpc3QtPm5vcm1hbCkgJiYgZnJl
ZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50KSB7Ci0gICAgICAgICAgICBTcGFu
KiBzID0gc2xpc3QtPm5vcm1hbC5wcmV2OyAKLSAgICAgICAgICAgIERMTF9SZW1vdmUocyk7Ci0g
ICAgICAgICAgICBBU1NFUlQoIXMtPmRlY29tbWl0dGVkKTsKLSAgICAgICAgICAgIGlmICghcy0+
ZGVjb21taXR0ZWQpIHsKLSAgICAgICAgICAgICAgICBUQ01hbGxvY19TeXN0ZW1SZWxlYXNlKHJl
aW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0YXJ0IDw8IGtQYWdlU2hpZnQpLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzLT5sZW5n
dGggPDwga1BhZ2VTaGlmdCkpOwotICAgICAgICAgICAgICAgIEFTU0VSVChmcmVlX2NvbW1pdHRl
ZF9wYWdlc18gPj0gcy0+bGVuZ3RoKTsKLSAgICAgICAgICAgICAgICBmcmVlX2NvbW1pdHRlZF9w
YWdlc18gLT0gcy0+bGVuZ3RoOwotICAgICAgICAgICAgICAgIHMtPmRlY29tbWl0dGVkID0gdHJ1
ZTsKKyAgICB3aGlsZSAoZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50KSB7
CisgICAgICAgIGZvciAoaW50IGkgPSBrTWF4UGFnZXM7IGkgPiAwICYmIGZyZWVfY29tbWl0dGVk
X3BhZ2VzXyA+PSB0YXJnZXRQYWdlQ291bnQ7IGktLSkgeworICAgICAgICAgICAgU3Bhbkxpc3Qq
IHNsaXN0ID0gKHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPT0ga01heFBhZ2VzKSA/ICZsYXJnZV8g
OiAmZnJlZV9baV07CisgICAgICAgICAgICAvLyBJZiB0aGUgc3BhbiBzaXplIGlzIGJpZ2dlciB0
aGFuIGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMgcGFnZXMgcmV0dXJuIGFsbCB0aGUgc3BhbnMgaW4g
dGhlIGxpc3QsIGVsc2UgcmV0dXJuIGFsbCBidXQgMSBzcGFuLiAgCisgICAgICAgICAgICAvLyBS
ZXR1cm4gb25seSA1MCUgb2YgYSBzcGFubGlzdCBhdCBhIHRpbWUgc28gc3BhbnMgb2Ygc2l6ZSAx
IGFyZSBub3QgdGhlIG9ubHkgb25lcyBsZWZ0LgorICAgICAgICAgICAgaW50IG51bVNwYW5zVG9S
ZXR1cm4gPSAoaSA+IGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMgKSA/IERMTF9MZW5ndGgoJnNsaXN0
LT5ub3JtYWwpIDogLjUgKiBETExfTGVuZ3RoKCZzbGlzdC0+bm9ybWFsKTsKKyAgICAgICAgICAg
IGZvciAoaW50IGogPSAwOyBqIDwgbnVtU3BhbnNUb1JldHVybiAmJiAhRExMX0lzRW1wdHkoJnNs
aXN0LT5ub3JtYWwpICYmIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyA+IHRhcmdldFBhZ2VDb3VudDsg
aisrKSB7CisgICAgICAgICAgICAgICAgU3BhbiogcyA9IHNsaXN0LT5ub3JtYWwucHJldjsgCisg
ICAgICAgICAgICAgICAgRExMX1JlbW92ZShzKTsKKyAgICAgICAgICAgICAgICBBU1NFUlQoIXMt
PmRlY29tbWl0dGVkKTsKKyAgICAgICAgICAgICAgICBpZiAoIXMtPmRlY29tbWl0dGVkKSB7Cisg
ICAgICAgICAgICAgICAgICAgIFRDTWFsbG9jX1N5c3RlbVJlbGVhc2UocmVpbnRlcnByZXRfY2Fz
dDx2b2lkKj4ocy0+c3RhcnQgPDwga1BhZ2VTaGlmdCksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzLT5sZW5ndGggPDwga1Bh
Z2VTaGlmdCkpOworICAgICAgICAgICAgICAgICAgICBBU1NFUlQoZnJlZV9jb21taXR0ZWRfcGFn
ZXNfID49IHMtPmxlbmd0aCk7CisgICAgICAgICAgICAgICAgICAgIGZyZWVfY29tbWl0dGVkX3Bh
Z2VzXyAtPSBzLT5sZW5ndGg7CisgICAgICAgICAgICAgICAgICAgIHMtPmRlY29tbWl0dGVkID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgRExMX1ByZXBlbmQoJnNs
aXN0LT5yZXR1cm5lZCwgcyk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBETExfUHJlcGVu
ZCgmc2xpc3QtPnJldHVybmVkLCBzKTsKICAgICAgICAgfQogICAgIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54776</attachid>
            <date>2010-04-29 20:23:10 -0700</date>
            <delta_ts>2010-04-30 17:39:22 -0700</delta_ts>
            <desc>second patch</desc>
            <filename>FastMallocPatch2.txt</filename>
            <type>text/plain</type>
            <size>4118</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU4NTU0KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDQtMjkgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM4MzY4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83ODM0NDMzPiBSRUdSRVNTU0lPTjog
MS41JSBQTFQgcmVncmVzc2lvbiBkdWUgdG8gNTYwMjggCisgICAgICAgIChyZXR1cm4gbWVtb3J5
IHF1aWNrZXIpLgorICAgICAgICBJbnN0ZWFkIG9mIHJldHVybmluZyBldmVyeXRoaW5nIGJ1dCB0
aGUgc21hbGxlc3Qgc3BhbnMgc3ByZWFkIG91dCAKKyAgICAgICAgdGhlIHNwYW5zIGtlcHQgb3Zl
ciBzZXZlcmFsIHNpemUgbGlzdHMuCisKKyAgICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6Cisg
ICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpzY2F2ZW5nZSk6CisKIDIwMTAtMDQtMjkg
IE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBH
ZW9mZiBHYXJlbi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9GYXN0TWFsbG9jLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDU4
NTM4KQorKysgSmF2YVNjcmlwdENvcmUvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMjczLDggKzEyNzMsMTIgQEAgc3RhdGljIGNvbnN0IGludCBrU2NhdmVuZ2VEZWxheUlu
U2Vjb25kcwogLy8gc2NhdmVuZ2UuCiBzdGF0aWMgY29uc3QgZmxvYXQga1NjYXZlbmdlUGVyY2Vu
dGFnZSA9IC41ZjsKIAotLy8gTnVtYmVyIG9mIGZyZWUgY29tbWl0dGVkIHBhZ2VzIHRoYXQgd2Ug
d2FudCB0byBrZWVwIGFyb3VuZC4KLXN0YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29t
bWl0dGVkUGFnZUNvdW50ID0gNTEyOworLy8gbnVtYmVyIG9mIHNwYW4gbGlzdHMgdG8ga2VlcCBz
cGFucyBpbiB3aGVuIG1lbW9yeSBpcyByZXR1cm5lZC4KK3N0YXRpYyBjb25zdCBzaXplX3Qga01p
blNwYW5MaXN0c1dpdGhTcGFucyA9IDMyOworCisvLyBOdW1iZXIgb2YgZnJlZSBjb21taXR0ZWQg
cGFnZXMgdGhhdCB3ZSB3YW50IHRvIGtlZXAgYXJvdW5kLiAgVGhlIG1pbmltdW0gbnVtYmVyIG9m
IHBhZ2VzIHVzZWQgd2hlbiB0aGVyZQorLy8gaXMgMSBzcGFuIGluIGVhY2ggb2YgdGhlIGZpcnN0
IGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMgc3Bhbmxpc3RzLiAgQ3VycmVudGx5IDUyOCBwYWdlcy4K
K3N0YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29tbWl0dGVkUGFnZUNvdW50ID0ga01p
blNwYW5MaXN0c1dpdGhTcGFucyAqICgoMS4wK2tNaW5TcGFuTGlzdHNXaXRoU3BhbnMpIC8gMi4w
KTsKIAogI2VuZGlmCiAKQEAgLTE1MzQsMjAgKzE1MzgsMjUgQEAgdm9pZCBUQ01hbGxvY19QYWdl
SGVhcDo6c2NhdmVuZ2UoKQogICAgIHNpemVfdCBwYWdlc1RvUmVsZWFzZSA9IG1pbl9mcmVlX2Nv
bW1pdHRlZF9wYWdlc19zaW5jZV9sYXN0X3NjYXZlbmdlXyAqIGtTY2F2ZW5nZVBlcmNlbnRhZ2U7
CiAgICAgc2l6ZV90IHRhcmdldFBhZ2VDb3VudCA9IHN0ZDo6bWF4PHNpemVfdD4oa01pbmltdW1G
cmVlQ29tbWl0dGVkUGFnZUNvdW50LCBmcmVlX2NvbW1pdHRlZF9wYWdlc18gLSBwYWdlc1RvUmVs
ZWFzZSk7CiAKLSAgICBmb3IgKGludCBpID0ga01heFBhZ2VzOyBpID49IDAgJiYgZnJlZV9jb21t
aXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50OyBpLS0pIHsKLSAgICAgICAgU3Bhbkxpc3Qq
IHNsaXN0ID0gKHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPT0ga01heFBhZ2VzKSA/ICZsYXJnZV8g
OiAmZnJlZV9baV07Ci0gICAgICAgIHdoaWxlICghRExMX0lzRW1wdHkoJnNsaXN0LT5ub3JtYWwp
ICYmIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyA+IHRhcmdldFBhZ2VDb3VudCkgewotICAgICAgICAg
ICAgU3BhbiogcyA9IHNsaXN0LT5ub3JtYWwucHJldjsgCi0gICAgICAgICAgICBETExfUmVtb3Zl
KHMpOwotICAgICAgICAgICAgQVNTRVJUKCFzLT5kZWNvbW1pdHRlZCk7Ci0gICAgICAgICAgICBp
ZiAoIXMtPmRlY29tbWl0dGVkKSB7Ci0gICAgICAgICAgICAgICAgVENNYWxsb2NfU3lzdGVtUmVs
ZWFzZShyZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdGFydCA8PCBrUGFnZVNoaWZ0KSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4o
cy0+bGVuZ3RoIDw8IGtQYWdlU2hpZnQpKTsKLSAgICAgICAgICAgICAgICBBU1NFUlQoZnJlZV9j
b21taXR0ZWRfcGFnZXNfID49IHMtPmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgZnJlZV9jb21t
aXR0ZWRfcGFnZXNfIC09IHMtPmxlbmd0aDsKLSAgICAgICAgICAgICAgICBzLT5kZWNvbW1pdHRl
ZCA9IHRydWU7CisgICAgd2hpbGUgKGZyZWVfY29tbWl0dGVkX3BhZ2VzXyA+IHRhcmdldFBhZ2VD
b3VudCkgeworICAgICAgICBmb3IgKGludCBpID0ga01heFBhZ2VzOyBpID4gMCAmJiBmcmVlX2Nv
bW1pdHRlZF9wYWdlc18gPj0gdGFyZ2V0UGFnZUNvdW50OyBpLS0pIHsKKyAgICAgICAgICAgIFNw
YW5MaXN0KiBzbGlzdCA9IChzdGF0aWNfY2FzdDxzaXplX3Q+KGkpID09IGtNYXhQYWdlcykgPyAm
bGFyZ2VfIDogJmZyZWVfW2ldOworICAgICAgICAgICAgLy8gSWYgdGhlIHNwYW4gc2l6ZSBpcyBi
aWdnZXIgdGhhbiBrTWluU3Bhbkxpc3RzV2l0aFNwYW5zIHBhZ2VzIHJldHVybiBhbGwgdGhlIHNw
YW5zIGluIHRoZSBsaXN0LCBlbHNlIHJldHVybiBhbGwgYnV0IDEgc3Bhbi4gIAorICAgICAgICAg
ICAgLy8gUmV0dXJuIG9ubHkgNTAlIG9mIGEgc3Bhbmxpc3QgYXQgYSB0aW1lIHNvIHNwYW5zIG9m
IHNpemUgMSBhcmUgbm90IHRoZSBvbmx5IG9uZXMgbGVmdC4KKyAgICAgICAgICAgIGludCBudW1T
cGFuc1RvUmV0dXJuID0gKHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPiBrTWluU3Bhbkxpc3RzV2l0
aFNwYW5zKSA/IERMTF9MZW5ndGgoJnNsaXN0LT5ub3JtYWwpIDogLjUgKiBETExfTGVuZ3RoKCZz
bGlzdC0+bm9ybWFsKTsKKyAgICAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgbnVtU3BhbnNU
b1JldHVybiAmJiAhRExMX0lzRW1wdHkoJnNsaXN0LT5ub3JtYWwpICYmIGZyZWVfY29tbWl0dGVk
X3BhZ2VzXyA+IHRhcmdldFBhZ2VDb3VudDsgaisrKSB7CisgICAgICAgICAgICAgICAgU3Bhbiog
cyA9IHNsaXN0LT5ub3JtYWwucHJldjsgCisgICAgICAgICAgICAgICAgRExMX1JlbW92ZShzKTsK
KyAgICAgICAgICAgICAgICBBU1NFUlQoIXMtPmRlY29tbWl0dGVkKTsKKyAgICAgICAgICAgICAg
ICBpZiAoIXMtPmRlY29tbWl0dGVkKSB7CisgICAgICAgICAgICAgICAgICAgIFRDTWFsbG9jX1N5
c3RlbVJlbGVhc2UocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocy0+c3RhcnQgPDwga1BhZ2VTaGlm
dCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nh
c3Q8c2l6ZV90PihzLT5sZW5ndGggPDwga1BhZ2VTaGlmdCkpOworICAgICAgICAgICAgICAgICAg
ICBBU1NFUlQoZnJlZV9jb21taXR0ZWRfcGFnZXNfID49IHMtPmxlbmd0aCk7CisgICAgICAgICAg
ICAgICAgICAgIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyAtPSBzLT5sZW5ndGg7CisgICAgICAgICAg
ICAgICAgICAgIHMtPmRlY29tbWl0dGVkID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgRExMX1ByZXBlbmQoJnNsaXN0LT5yZXR1cm5lZCwgcyk7CiAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICBETExfUHJlcGVuZCgmc2xpc3QtPnJldHVybmVkLCBzKTsKICAgICAg
ICAgfQogICAgIH0KIAo=
</data>
<flag name="review"
          id="38815"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54841</attachid>
            <date>2010-04-30 17:39:22 -0700</date>
            <delta_ts>2010-05-03 15:52:42 -0700</delta_ts>
            <desc>patch with correct fix</desc>
            <filename>FastMallocPatch2.txt</filename>
            <type>text/plain</type>
            <size>4121</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU4NTU0KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDQtMjkgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM4MzY4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83ODM0NDMzPiBSRUdSRVNTU0lPTjog
MS41JSBQTFQgcmVncmVzc2lvbiBkdWUgdG8gNTYwMjggCisgICAgICAgIChyZXR1cm4gbWVtb3J5
IHF1aWNrZXIpLgorICAgICAgICBJbnN0ZWFkIG9mIHJldHVybmluZyBldmVyeXRoaW5nIGJ1dCB0
aGUgc21hbGxlc3Qgc3BhbnMgc3ByZWFkIG91dCAKKyAgICAgICAgdGhlIHNwYW5zIGtlcHQgb3Zl
ciBzZXZlcmFsIHNpemUgbGlzdHMuCisKKyAgICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6Cisg
ICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpzY2F2ZW5nZSk6CisKIDIwMTAtMDQtMjkg
IE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBH
ZW9mZiBHYXJlbi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9GYXN0TWFsbG9jLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDU4
NTM4KQorKysgSmF2YVNjcmlwdENvcmUvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMjczLDggKzEyNzMsMTIgQEAgc3RhdGljIGNvbnN0IGludCBrU2NhdmVuZ2VEZWxheUlu
U2Vjb25kcwogLy8gc2NhdmVuZ2UuCiBzdGF0aWMgY29uc3QgZmxvYXQga1NjYXZlbmdlUGVyY2Vu
dGFnZSA9IC41ZjsKIAotLy8gTnVtYmVyIG9mIGZyZWUgY29tbWl0dGVkIHBhZ2VzIHRoYXQgd2Ug
d2FudCB0byBrZWVwIGFyb3VuZC4KLXN0YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29t
bWl0dGVkUGFnZUNvdW50ID0gNTEyOworLy8gTnVtYmVyIG9mIHNwYW4gbGlzdHMgdG8ga2VlcCBz
cGFucyBpbiB3aGVuIG1lbW9yeSBpcyByZXR1cm5lZC4KK3N0YXRpYyBjb25zdCBpbnQga01pblNw
YW5MaXN0c1dpdGhTcGFucyA9IDMyOworCisvLyBOdW1iZXIgb2YgZnJlZSBjb21taXR0ZWQgcGFn
ZXMgdGhhdCB3ZSB3YW50IHRvIGtlZXAgYXJvdW5kLiAgVGhlIG1pbmltdW0gbnVtYmVyIG9mIHBh
Z2VzIHVzZWQgd2hlbiB0aGVyZQorLy8gaXMgMSBzcGFuIGluIGVhY2ggb2YgdGhlIGZpcnN0IGtN
aW5TcGFuTGlzdHNXaXRoU3BhbnMgc3Bhbmxpc3RzLiAgQ3VycmVudGx5IDUyOCBwYWdlcy4KK3N0
YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29tbWl0dGVkUGFnZUNvdW50ID0ga01pblNw
YW5MaXN0c1dpdGhTcGFucyAqICgoMS4wbCtrTWluU3Bhbkxpc3RzV2l0aFNwYW5zKSAvIDIuMGwp
OwogCiAjZW5kaWYKIApAQCAtMTUzNCwyMCArMTUzOCwyNSBAQCB2b2lkIFRDTWFsbG9jX1BhZ2VI
ZWFwOjpzY2F2ZW5nZSgpCiAgICAgc2l6ZV90IHBhZ2VzVG9SZWxlYXNlID0gbWluX2ZyZWVfY29t
bWl0dGVkX3BhZ2VzX3NpbmNlX2xhc3Rfc2NhdmVuZ2VfICoga1NjYXZlbmdlUGVyY2VudGFnZTsK
ICAgICBzaXplX3QgdGFyZ2V0UGFnZUNvdW50ID0gc3RkOjptYXg8c2l6ZV90PihrTWluaW11bUZy
ZWVDb21taXR0ZWRQYWdlQ291bnQsIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyAtIHBhZ2VzVG9SZWxl
YXNlKTsKIAotICAgIGZvciAoaW50IGkgPSBrTWF4UGFnZXM7IGkgPj0gMCAmJiBmcmVlX2NvbW1p
dHRlZF9wYWdlc18gPiB0YXJnZXRQYWdlQ291bnQ7IGktLSkgewotICAgICAgICBTcGFuTGlzdCog
c2xpc3QgPSAoc3RhdGljX2Nhc3Q8c2l6ZV90PihpKSA9PSBrTWF4UGFnZXMpID8gJmxhcmdlXyA6
ICZmcmVlX1tpXTsKLSAgICAgICAgd2hpbGUgKCFETExfSXNFbXB0eSgmc2xpc3QtPm5vcm1hbCkg
JiYgZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50KSB7Ci0gICAgICAgICAg
ICBTcGFuKiBzID0gc2xpc3QtPm5vcm1hbC5wcmV2OyAKLSAgICAgICAgICAgIERMTF9SZW1vdmUo
cyk7Ci0gICAgICAgICAgICBBU1NFUlQoIXMtPmRlY29tbWl0dGVkKTsKLSAgICAgICAgICAgIGlm
ICghcy0+ZGVjb21taXR0ZWQpIHsKLSAgICAgICAgICAgICAgICBUQ01hbGxvY19TeXN0ZW1SZWxl
YXNlKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0YXJ0IDw8IGtQYWdlU2hpZnQpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90Pihz
LT5sZW5ndGggPDwga1BhZ2VTaGlmdCkpOwotICAgICAgICAgICAgICAgIEFTU0VSVChmcmVlX2Nv
bW1pdHRlZF9wYWdlc18gPj0gcy0+bGVuZ3RoKTsKLSAgICAgICAgICAgICAgICBmcmVlX2NvbW1p
dHRlZF9wYWdlc18gLT0gcy0+bGVuZ3RoOwotICAgICAgICAgICAgICAgIHMtPmRlY29tbWl0dGVk
ID0gdHJ1ZTsKKyAgICB3aGlsZSAoZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNv
dW50KSB7CisgICAgICAgIGZvciAoaW50IGkgPSBrTWF4UGFnZXM7IGkgPiAwICYmIGZyZWVfY29t
bWl0dGVkX3BhZ2VzXyA+PSB0YXJnZXRQYWdlQ291bnQ7IGktLSkgeworICAgICAgICAgICAgU3Bh
bkxpc3QqIHNsaXN0ID0gKHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPT0ga01heFBhZ2VzKSA/ICZs
YXJnZV8gOiAmZnJlZV9baV07CisgICAgICAgICAgICAvLyBJZiB0aGUgc3BhbiBzaXplIGlzIGJp
Z2dlciB0aGFuIGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMgcGFnZXMgcmV0dXJuIGFsbCB0aGUgc3Bh
bnMgaW4gdGhlIGxpc3QsIGVsc2UgcmV0dXJuIGFsbCBidXQgMSBzcGFuLiAgCisgICAgICAgICAg
ICAvLyBSZXR1cm4gb25seSA1MCUgb2YgYSBzcGFubGlzdCBhdCBhIHRpbWUgc28gc3BhbnMgb2Yg
c2l6ZSAxIGFyZSBub3QgdGhlIG9ubHkgb25lcyBsZWZ0LgorICAgICAgICAgICAgc2l6ZV90IG51
bVNwYW5zVG9SZXR1cm4gPSAoaSA+IGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMpID8gRExMX0xlbmd0
aCgmc2xpc3QtPm5vcm1hbCkgOiAuNWwgKiBETExfTGVuZ3RoKCZzbGlzdC0+bm9ybWFsKTsKKyAg
ICAgICAgICAgIGZvciAoaW50IGogPSAwOyBzdGF0aWNfY2FzdDxzaXplX3Q+KGopIDwgbnVtU3Bh
bnNUb1JldHVybiAmJiAhRExMX0lzRW1wdHkoJnNsaXN0LT5ub3JtYWwpICYmIGZyZWVfY29tbWl0
dGVkX3BhZ2VzXyA+IHRhcmdldFBhZ2VDb3VudDsgaisrKSB7CisgICAgICAgICAgICAgICAgU3Bh
biogcyA9IHNsaXN0LT5ub3JtYWwucHJldjsgCisgICAgICAgICAgICAgICAgRExMX1JlbW92ZShz
KTsKKyAgICAgICAgICAgICAgICBBU1NFUlQoIXMtPmRlY29tbWl0dGVkKTsKKyAgICAgICAgICAg
ICAgICBpZiAoIXMtPmRlY29tbWl0dGVkKSB7CisgICAgICAgICAgICAgICAgICAgIFRDTWFsbG9j
X1N5c3RlbVJlbGVhc2UocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocy0+c3RhcnQgPDwga1BhZ2VT
aGlmdCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGlj
X2Nhc3Q8c2l6ZV90PihzLT5sZW5ndGggPDwga1BhZ2VTaGlmdCkpOworICAgICAgICAgICAgICAg
ICAgICBBU1NFUlQoZnJlZV9jb21taXR0ZWRfcGFnZXNfID49IHMtPmxlbmd0aCk7CisgICAgICAg
ICAgICAgICAgICAgIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyAtPSBzLT5sZW5ndGg7CisgICAgICAg
ICAgICAgICAgICAgIHMtPmRlY29tbWl0dGVkID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICAgICAgRExMX1ByZXBlbmQoJnNsaXN0LT5yZXR1cm5lZCwgcyk7CiAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICBETExfUHJlcGVuZCgmc2xpc3QtPnJldHVybmVkLCBzKTsKICAg
ICAgICAgfQogICAgIH0KIAo=
</data>
<flag name="review"
          id="38901"
          type_id="1"
          status="-"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54971</attachid>
            <date>2010-05-03 15:52:42 -0700</date>
            <delta_ts>2010-05-03 16:24:17 -0700</delta_ts>
            <desc>patch</desc>
            <filename>FastMallocPatch2.txt</filename>
            <type>text/plain</type>
            <size>4141</size>
            <attacher name="Stephanie Lewis">slewis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDU4NTU0KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDQtMjkgIFN0ZXBoYW5p
ZSBMZXdpcyAgPHNsZXdpc0BhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM4MzY4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83ODM0NDMzPiBSRUdSRVNTU0lPTjog
MS41JSBQTFQgcmVncmVzc2lvbiBkdWUgdG8gNTYwMjggCisgICAgICAgIChyZXR1cm4gbWVtb3J5
IHF1aWNrZXIpLgorICAgICAgICBJbnN0ZWFkIG9mIHJldHVybmluZyBldmVyeXRoaW5nIGJ1dCB0
aGUgc21hbGxlc3Qgc3BhbnMgc3ByZWFkIG91dCAKKyAgICAgICAgdGhlIHNwYW5zIGtlcHQgb3Zl
ciBzZXZlcmFsIHNpemUgbGlzdHMuCisKKyAgICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6Cisg
ICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpzY2F2ZW5nZSk6CisKIDIwMTAtMDQtMjkg
IE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBH
ZW9mZiBHYXJlbi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL3d0Zi9GYXN0TWFsbG9jLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDU4
NTM4KQorKysgSmF2YVNjcmlwdENvcmUvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMjczLDggKzEyNzMsMTIgQEAgc3RhdGljIGNvbnN0IGludCBrU2NhdmVuZ2VEZWxheUlu
U2Vjb25kcwogLy8gc2NhdmVuZ2UuCiBzdGF0aWMgY29uc3QgZmxvYXQga1NjYXZlbmdlUGVyY2Vu
dGFnZSA9IC41ZjsKIAotLy8gTnVtYmVyIG9mIGZyZWUgY29tbWl0dGVkIHBhZ2VzIHRoYXQgd2Ug
d2FudCB0byBrZWVwIGFyb3VuZC4KLXN0YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29t
bWl0dGVkUGFnZUNvdW50ID0gNTEyOworLy8gbnVtYmVyIG9mIHNwYW4gbGlzdHMgdG8ga2VlcCBz
cGFucyBpbiB3aGVuIG1lbW9yeSBpcyByZXR1cm5lZC4KK3N0YXRpYyBjb25zdCBpbnQga01pblNw
YW5MaXN0c1dpdGhTcGFucyA9IDMyOworCisvLyBOdW1iZXIgb2YgZnJlZSBjb21taXR0ZWQgcGFn
ZXMgdGhhdCB3ZSB3YW50IHRvIGtlZXAgYXJvdW5kLiAgVGhlIG1pbmltdW0gbnVtYmVyIG9mIHBh
Z2VzIHVzZWQgd2hlbiB0aGVyZQorLy8gaXMgMSBzcGFuIGluIGVhY2ggb2YgdGhlIGZpcnN0IGtN
aW5TcGFuTGlzdHNXaXRoU3BhbnMgc3Bhbmxpc3RzLiAgQ3VycmVudGx5IDUyOCBwYWdlcy4KK3N0
YXRpYyBjb25zdCBzaXplX3Qga01pbmltdW1GcmVlQ29tbWl0dGVkUGFnZUNvdW50ID0ga01pblNw
YW5MaXN0c1dpdGhTcGFucyAqICgoMS4wZitrTWluU3Bhbkxpc3RzV2l0aFNwYW5zKSAvIDIuMGYp
OwogCiAjZW5kaWYKIApAQCAtMTUzNCwyMCArMTUzOCwyNSBAQCB2b2lkIFRDTWFsbG9jX1BhZ2VI
ZWFwOjpzY2F2ZW5nZSgpCiAgICAgc2l6ZV90IHBhZ2VzVG9SZWxlYXNlID0gbWluX2ZyZWVfY29t
bWl0dGVkX3BhZ2VzX3NpbmNlX2xhc3Rfc2NhdmVuZ2VfICoga1NjYXZlbmdlUGVyY2VudGFnZTsK
ICAgICBzaXplX3QgdGFyZ2V0UGFnZUNvdW50ID0gc3RkOjptYXg8c2l6ZV90PihrTWluaW11bUZy
ZWVDb21taXR0ZWRQYWdlQ291bnQsIGZyZWVfY29tbWl0dGVkX3BhZ2VzXyAtIHBhZ2VzVG9SZWxl
YXNlKTsKIAotICAgIGZvciAoaW50IGkgPSBrTWF4UGFnZXM7IGkgPj0gMCAmJiBmcmVlX2NvbW1p
dHRlZF9wYWdlc18gPiB0YXJnZXRQYWdlQ291bnQ7IGktLSkgewotICAgICAgICBTcGFuTGlzdCog
c2xpc3QgPSAoc3RhdGljX2Nhc3Q8c2l6ZV90PihpKSA9PSBrTWF4UGFnZXMpID8gJmxhcmdlXyA6
ICZmcmVlX1tpXTsKLSAgICAgICAgd2hpbGUgKCFETExfSXNFbXB0eSgmc2xpc3QtPm5vcm1hbCkg
JiYgZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50KSB7Ci0gICAgICAgICAg
ICBTcGFuKiBzID0gc2xpc3QtPm5vcm1hbC5wcmV2OyAKLSAgICAgICAgICAgIERMTF9SZW1vdmUo
cyk7Ci0gICAgICAgICAgICBBU1NFUlQoIXMtPmRlY29tbWl0dGVkKTsKLSAgICAgICAgICAgIGlm
ICghcy0+ZGVjb21taXR0ZWQpIHsKLSAgICAgICAgICAgICAgICBUQ01hbGxvY19TeXN0ZW1SZWxl
YXNlKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0YXJ0IDw8IGtQYWdlU2hpZnQpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90Pihz
LT5sZW5ndGggPDwga1BhZ2VTaGlmdCkpOwotICAgICAgICAgICAgICAgIEFTU0VSVChmcmVlX2Nv
bW1pdHRlZF9wYWdlc18gPj0gcy0+bGVuZ3RoKTsKLSAgICAgICAgICAgICAgICBmcmVlX2NvbW1p
dHRlZF9wYWdlc18gLT0gcy0+bGVuZ3RoOwotICAgICAgICAgICAgICAgIHMtPmRlY29tbWl0dGVk
ID0gdHJ1ZTsKKyAgICB3aGlsZSAoZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNv
dW50KSB7CisgICAgICAgIGZvciAoaW50IGkgPSBrTWF4UGFnZXM7IGkgPiAwICYmIGZyZWVfY29t
bWl0dGVkX3BhZ2VzXyA+PSB0YXJnZXRQYWdlQ291bnQ7IGktLSkgeworICAgICAgICAgICAgU3Bh
bkxpc3QqIHNsaXN0ID0gKHN0YXRpY19jYXN0PHNpemVfdD4oaSkgPT0ga01heFBhZ2VzKSA/ICZs
YXJnZV8gOiAmZnJlZV9baV07CisgICAgICAgICAgICAvLyBJZiB0aGUgc3BhbiBzaXplIGlzIGJp
Z2dlciB0aGFuIGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMgcGFnZXMgcmV0dXJuIGFsbCB0aGUgc3Bh
bnMgaW4gdGhlIGxpc3QsIGVsc2UgcmV0dXJuIGFsbCBidXQgMSBzcGFuLiAgCisgICAgICAgICAg
ICAvLyBSZXR1cm4gb25seSA1MCUgb2YgYSBzcGFubGlzdCBhdCBhIHRpbWUgc28gc3BhbnMgb2Yg
c2l6ZSAxIGFyZSBub3QgdGhlIG9ubHkgb25lcyBsZWZ0LgorICAgICAgICAgICAgc2l6ZV90IG51
bVNwYW5zVG9SZXR1cm4gPSAoaSA+IGtNaW5TcGFuTGlzdHNXaXRoU3BhbnMpID8gRExMX0xlbmd0
aCgmc2xpc3QtPm5vcm1hbCkgOiBzdGF0aWNfY2FzdDxzaXplX3Q+KC41ICogRExMX0xlbmd0aCgm
c2xpc3QtPm5vcm1hbCkpOworICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IHN0YXRpY19jYXN0
PHNpemVfdD4oaikgPCBudW1TcGFuc1RvUmV0dXJuICYmICFETExfSXNFbXB0eSgmc2xpc3QtPm5v
cm1hbCkgJiYgZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50OyBqKyspIHsK
KyAgICAgICAgICAgICAgICBTcGFuKiBzID0gc2xpc3QtPm5vcm1hbC5wcmV2OyAKKyAgICAgICAg
ICAgICAgICBETExfUmVtb3ZlKHMpOworICAgICAgICAgICAgICAgIEFTU0VSVCghcy0+ZGVjb21t
aXR0ZWQpOworICAgICAgICAgICAgICAgIGlmICghcy0+ZGVjb21taXR0ZWQpIHsKKyAgICAgICAg
ICAgICAgICAgICAgVENNYWxsb2NfU3lzdGVtUmVsZWFzZShyZWludGVycHJldF9jYXN0PHZvaWQq
PihzLT5zdGFydCA8PCBrUGFnZVNoaWZ0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KHMtPmxlbmd0aCA8PCBrUGFnZVNoaWZ0
KSk7CisgICAgICAgICAgICAgICAgICAgIEFTU0VSVChmcmVlX2NvbW1pdHRlZF9wYWdlc18gPj0g
cy0+bGVuZ3RoKTsKKyAgICAgICAgICAgICAgICAgICAgZnJlZV9jb21taXR0ZWRfcGFnZXNfIC09
IHMtPmxlbmd0aDsKKyAgICAgICAgICAgICAgICAgICAgcy0+ZGVjb21taXR0ZWQgPSB0cnVlOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBETExfUHJlcGVuZCgmc2xpc3QtPnJl
dHVybmVkLCBzKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIERMTF9QcmVwZW5kKCZzbGlz
dC0+cmV0dXJuZWQsIHMpOwogICAgICAgICB9CiAgICAgfQogCg==
</data>
<flag name="review"
          id="39058"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>