<?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>41641</bug_id>
          
          <creation_ts>2010-07-05 15:00:19 -0700</creation_ts>
          <short_desc>Update compile flags to allow use of ExecutableAllocatorFixedVMPool on platforms other than x86-64</short_desc>
          <delta_ts>2010-07-08 11:58:53 -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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>41679</dependson>
    
    <dependson>41686</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
    
    <cc>zherczeg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>246793</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-07-05 15:00:19 -0700</bug_when>
    <thetext>This may be useful on 32-bit platforms, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246795</commentid>
    <comment_count>1</comment_count>
      <attachid>60570</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-07-05 15:06:55 -0700</bug_when>
    <thetext>Created attachment 60570
The patch

The constants VM_POOL_SIZE &amp; COALESCE_LIMIT will require some tuning, have put in some hopefully sensible starting points.

This patch is a cleanup that should not change the behaviour on any platform.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246815</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-05 18:21:51 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/62511 might have broken SnowLeopard Intel Release (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246866</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-07-05 22:55:07 -0700</bug_when>
    <thetext>fixed in r62511</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247019</commentid>
    <comment_count>4</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-06 04:36:21 -0700</bug_when>
    <thetext>I rolled this out because it breaks Linux/64bit. I&apos;m unsure of what we are supposed to do, since ExecutableAllocatorPosix.cpp is now defined only for 32bit, and ExecutableAllocatorFixedVMPool.cpp is Darwin-only atm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247021</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2010-07-06 04:43:00 -0700</bug_when>
    <thetext>Xan, if this was rolled out you need to do two things:
1) Mention the revision number in which it was rolled out.
2) Reopen the bug.  If the change is no longer in the tree then the bug clearly isn’t “fixed”.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247027</commentid>
    <comment_count>6</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-06 05:10:35 -0700</bug_when>
    <thetext>Sorry, for some reason thought the bot had reopened it. The bug is linked in the &apos;Depends on&apos; list though, revision where this was rolled out is r62544.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247646</commentid>
    <comment_count>7</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-07-07 11:11:26 -0700</bug_when>
    <thetext>I hadn&apos;t realized the JIT had been enabled on x86-64 Linux using the posix allocator - this is terribly unsafe, we should only be using the fixed pool allocator on 64bit (due to a branch range issue). However this is also implemented in terms of posix mmap/munmap, so should work on Linux too.  Do you know what the problem is here? - is it just missing arc4random? - if so, we can just disable the ASLR on !OS(DARWIN) platforms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247850</commentid>
    <comment_count>8</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-07 16:45:40 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; I hadn&apos;t realized the JIT had been enabled on x86-64 Linux using the posix allocator - this is terribly unsafe, we should only be using the fixed pool allocator on 64bit (due to a branch range issue). However this is also implemented in terms of posix mmap/munmap, so should work on Linux too.  Do you know what the problem is here? - is it just missing arc4random? - if so, we can just disable the ASLR on !OS(DARWIN) platforms.

Oh, I haven&apos;t tried to actually compile the file. Just saw that it used to be guarded by OS(DARWIN) and has mach headers, so it won&apos;t compile on Linux out of the box. If the right thing to do is use this I can try to get it into shape.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248031</commentid>
    <comment_count>9</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2010-07-07 23:17:51 -0700</bug_when>
    <thetext>Exactly, arc4random is missing. In Qt-Linux 64, mmap with 0 address works fine, and not sure what is the advantage of forcing a custom address space (anyway an idea: since the random address space may collide with something else, you could encolse it in a loop, and could try 3 or 4 times with different random values before crash with out of memory)

Anyway, that patch was rolled out, so you can incorporate this fix into that patch before landing again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248397</commentid>
    <comment_count>10</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-07-08 11:55:22 -0700</bug_when>
    <thetext>*** Bug 41679 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248400</commentid>
    <comment_count>11</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-07-08 11:58:53 -0700</bug_when>
    <thetext>Relanded in 62799, GTK fixes in 62806, 62811.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60570</attachid>
            <date>2010-07-05 15:06:55 -0700</date>
            <delta_ts>2010-07-05 15:56:34 -0700</delta_ts>
            <desc>The patch</desc>
            <filename>patch.executableAllocatorFixed.txt</filename>
            <type>text/plain</type>
            <size>9177</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDYyNTA5KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTAtMDctMDUgIEdhdmluIEJh
cnJhY2xvdWdoICA8YmFycmFjbG91Z2hAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00MTY0MQorCisgICAgICAgIFVwZGF0ZSBjb21waWxlIGZsYWdzIHRvIGFsbG93
IHVzZSBvZiBFeGVjdXRhYmxlQWxsb2NhdG9yRml4ZWRWTVBvb2wgb24gcGxhdGZvcm1zCisgICAg
ICAgIG90aGVyIHRoYW4geDg2LTY0ICh0aGlzIG1heSBiZSB1c2VmdWwgb24gMzItYml0IHBsYXRm
b3JtcywgdG9vKS4KKworICAgICAgICBTaW1wbGlmeSBpZmRlZnMgYnkgZGl2aWRpbmcgaW50byB0
aHdvIGJyb2FkIGFsbG9jYXRpb24gc3RyYXRlZ2llcworICAgICAgICAoRU5BQkxFX0VYRUNVVEFC
TEVfQUxMT0NBVE9SX0ZJWEVEICYgRU5BQkxFX0VYRUNVVEFCTEVfQUxMT0NBVE9SX0RFTUFORCku
CisKKyAgICAgICAgUmVuYW1lIGNvbnN0YW50IHVzZWQgaW4gdGhlIGNvZGUgdG8gaGF2ZSBuYW1l
cyBkZXNjcmlwdGl2ZSBvZiB0aGVpciBwdXJwb3NlLAorICAgICAgICByYXRoZXIgdGhhbiB0aGVp
ciBzcGVjaWZpYyB2YWx1ZSBvbiBhIGdpdmVuIHBsYXRmb3JtLgorCisgICAgICAgICogaml0L0V4
ZWN1dGFibGVBbGxvY2F0b3IuY3BwOgorICAgICAgICAoSlNDOjpFeGVjdXRhYmxlQWxsb2NhdG9y
OjpyZXByb3RlY3RSZWdpb24pOgorICAgICAgICAoSlNDOjpFeGVjdXRhYmxlQWxsb2NhdG9yOjpj
YWNoZUZsdXNoKToKKyAgICAgICAgKiBqaXQvRXhlY3V0YWJsZUFsbG9jYXRvckZpeGVkVk1Qb29s
LmNwcDoKKyAgICAgICAgKEpTQzo6Rml4ZWRWTVBvb2xBbGxvY2F0b3I6OkZpeGVkVk1Qb29sQWxs
b2NhdG9yKToKKyAgICAgICAgKEpTQzo6Rml4ZWRWTVBvb2xBbGxvY2F0b3I6OmZyZWUpOgorICAg
ICAgICAoSlNDOjpFeGVjdXRhYmxlUG9vbDo6c3lzdGVtQWxsb2MpOgorICAgICAgICAqIGppdC9F
eGVjdXRhYmxlQWxsb2NhdG9yUG9zaXguY3BwOgorICAgICAgICAqIGppdC9FeGVjdXRhYmxlQWxs
b2NhdG9yU3ltYmlhbi5jcHA6CisgICAgICAgICogaml0L0V4ZWN1dGFibGVBbGxvY2F0b3JXaW4u
Y3BwOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybS5oOgorCiAyMDEwLTA3LTA1ICBTdGV2ZSBCbG9j
ayAgPHN0ZXZlYmxvY2tAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBB
ZGxlci4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2ppdC9FeGVjdXRhYmxlQWxsb2NhdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvci5jcHAJ
KHJldmlzaW9uIDYyNDcyKQorKysgSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0
b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw2ICszMyw0MiBAQCBuYW1lc3BhY2UgSlNDIHsK
IAogc2l6ZV90IEV4ZWN1dGFibGVBbGxvY2F0b3I6OnBhZ2VTaXplID0gMDsKIAorI2lmIEVOQUJM
RShBU1NFTUJMRVJfV1hfRVhDTFVTSVZFKQordm9pZCBFeGVjdXRhYmxlQWxsb2NhdG9yOjpyZXBy
b3RlY3RSZWdpb24odm9pZCogc3RhcnQsIHNpemVfdCBzaXplLCBQcm90ZWN0aW9uU2V0aW5nIHNl
dHRpbmcpCit7CisgICAgaWYgKCFwYWdlU2l6ZSkKKyAgICAgICAgaW50aWFsaXplUGFnZVNpemUo
KTsKKworICAgIC8vIENhbGN1bGF0ZSB0aGUgc3RhcnQgb2YgdGhlIHBhZ2UgY29udGFpbmluZyB0
aGlzIHJlZ2lvbiwKKyAgICAvLyBhbmQgYWNjb3VudCBmb3IgdGhpcyBleHRyYSBtZW1vcnkgd2l0
aGluIHNpemUuCisgICAgaW50cHRyX3Qgc3RhcnRQdHIgPSByZWludGVycHJldF9jYXN0PGludHB0
cl90PihzdGFydCk7CisgICAgaW50cHRyX3QgcGFnZVN0YXJ0UHRyID0gc3RhcnRQdHIgJiB+KHBh
Z2VTaXplIC0gMSk7CisgICAgdm9pZCogcGFnZVN0YXJ0ID0gcmVpbnRlcnByZXRfY2FzdDx2b2lk
Kj4ocGFnZVN0YXJ0UHRyKTsKKyAgICBzaXplICs9IChzdGFydFB0ciAtIHBhZ2VTdGFydFB0cik7
CisKKyAgICAvLyBSb3VuZCBzaXplIHVwCisgICAgc2l6ZSArPSAocGFnZVNpemUgLSAxKTsKKyAg
ICBzaXplICY9IH4ocGFnZVNpemUgLSAxKTsKKworICAgIG1wcm90ZWN0KHBhZ2VTdGFydCwgc2l6
ZSwgKHNldHRpbmcgPT0gV3JpdGFibGUpID8gUFJPVEVDVElPTl9GTEFHU19SVyA6IFBST1RFQ1RJ
T05fRkxBR1NfUlgpOworfQorI2VuZGlmCisKKyNpZiBDUFUoQVJNX1RSQURJVElPTkFMKSAmJiBP
UyhMSU5VWCkgJiYgQ09NUElMRVIoUlZDVCkKK19fYXNtIHZvaWQgRXhlY3V0YWJsZUFsbG9jYXRv
cjo6Y2FjaGVGbHVzaCh2b2lkKiBjb2RlLCBzaXplX3Qgc2l6ZSkKK3sKKyAgICBBUk0KKyAgICBw
dXNoIHtyN30KKyAgICBhZGQgcjEsIHIxLCByMAorICAgIG1vdiByNywgIzB4ZjAwMDAKKyAgICBh
ZGQgcjcsIHI3LCAjMHgyCisgICAgbW92IHIyLCAjMHgwCisgICAgc3ZjICMweDAKKyAgICBwb3Ag
e3I3fQorICAgIGJ4IGxyCit9CisjZW5kaWYKKwogfQogCiAjZW5kaWYgLy8gSEFWRShBU1NFTUJM
RVIpCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9jYXRvckZpeGVkVk1Q
b29sLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFsbG9j
YXRvckZpeGVkVk1Qb29sLmNwcAkocmV2aXNpb24gNjI0NzIpCisrKyBKYXZhU2NyaXB0Q29yZS9q
aXQvRXhlY3V0YWJsZUFsbG9jYXRvckZpeGVkVk1Qb29sLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjcsNyArMjcsNyBAQAogCiAjaW5jbHVkZSAiRXhlY3V0YWJsZUFsbG9jYXRvci5oIgogCi0jaWYg
RU5BQkxFKEFTU0VNQkxFUikgJiYgT1MoREFSV0lOKSAmJiBDUFUoWDg2XzY0KQorI2lmIEVOQUJM
RShFWEVDVVRBQkxFX0FMTE9DQVRPUl9GSVhFRCkKIAogI2luY2x1ZGUgPGVycm5vLmg+CiAKQEAg
LTM5LDEzICszOSwyMiBAQAogI2luY2x1ZGUgPHd0Zi9BVkxUcmVlLmg+CiAjaW5jbHVkZSA8d3Rm
L1ZNVGFncy5oPgogCisjaWYgQ1BVKFg4Nl82NCkKKyAgICAvLyBUaGVzZSBsaW1pdHMgc3VpdGFi
bGUgb24gNjQtYml0IHBsYXRmb3JtcyAocGFydGljdWxhcmx5IHg4Ni02NCwgd2hlcmUgd2UgcmVx
dWlyZSBhbGwganVtcHMgdG8gaGF2ZSBhIDJHYiBtYXggcmFuZ2UpLgorICAgICNkZWZpbmUgVk1f
UE9PTF9TSVpFICgydSAqIDEwMjR1ICogMTAyNHUgKiAxMDI0dSkgLy8gMkdiCisgICAgI2RlZmlu
ZSBDT0FMRVNDRV9MSU1JVCAoMTZ1ICogMTAyNHUgKiAxMDI0dSkgLy8gMTZNYgorICAgICNkZWZp
bmUgVk1fUE9PTF9BU0xSIDEKKyNlbHNlCisgICAgLy8gVGhlc2UgbGltaXRzIGFyZSBob3BlZnVs
bHkgc2Vuc2libGUgb24gZW1iZWRkZWQgcGxhdGZvcm1zLgorICAgICNkZWZpbmUgVk1fUE9PTF9T
SVpFICgzMnUgKiAxMDI0dSAqIDEwMjR1KSAvLyAzMk1iCisgICAgI2RlZmluZSBDT0FMRVNDRV9M
SU1JVCAoNHUgKiAxMDI0dSAqIDEwMjR1KSAvLyA0TWIKKyAgICAjZGVmaW5lIFZNX1BPT0xfQVNM
UiAwCisjZW5kaWYKKwogdXNpbmcgbmFtZXNwYWNlIFdURjsKIAogbmFtZXNwYWNlIEpTQyB7CiAK
LSNkZWZpbmUgVFdPX0dCICgydSAqIDEwMjR1ICogMTAyNHUgKiAxMDI0dSkKLSNkZWZpbmUgU0lY
VEVFTl9NQiAoMTZ1ICogMTAyNHUgKiAxMDI0dSkKLQogLy8gRnJlZUxpc3RFbnRyeSBkZXNjcmli
ZXMgYSBmcmVlIGNodW5rIG9mIG1lbW9yeSwgc3RvcmVkIGluIHRoZSBmcmVlTGlzdC4KIHN0cnVj
dCBGcmVlTGlzdEVudHJ5IHsKICAgICBGcmVlTGlzdEVudHJ5KHZvaWQqIHBvaW50ZXIsIHNpemVf
dCBzaXplKQpAQCAtMjkxLDkgKzMwMCwxMiBAQCBwdWJsaWM6CiAgICAgICAgIC8vIGZvciBub3cg
aW5zdGVhZCBvZiAyXjI2IGJpdHMgb2YgQVNMUiBsZXRzIHN0aWNrIHdpdGggMjUgYml0cyBvZiBy
YW5kb21pemF0aW9uIHBsdXMKICAgICAgICAgLy8gMl4yNCwgd2hpY2ggc2hvdWxkIHB1dCB1cCBz
b21ld2hlcmUgaW4gdGhlIG1pZGRsZSBvZiB1c2VzcGFjZSAoaW4gdGhlIGFkZHJlc3MgcmFuZ2UK
ICAgICAgICAgLy8gMHgyMDAwMDAwMDAwMDAgLi4gMHg1ZmZmZmZmZmZmZmYpLgotICAgICAgICBp
bnRwdHJfdCByYW5kb21Mb2NhdGlvbiA9IGFyYzRyYW5kb20oKSAmICgoMSA8PCAyNSkgLSAxKTsK
KyAgICAgICAgaW50cHRyX3QgcmFuZG9tTG9jYXRpb24gPSAwOworI2lmIFZNX1BPT0xfQVNMUgor
ICAgICAgICByYW5kb21Mb2NhdGlvbiA9IGFyYzRyYW5kb20oKSAmICgoMSA8PCAyNSkgLSAxKTsK
ICAgICAgICAgcmFuZG9tTG9jYXRpb24gKz0gKDEgPDwgMjQpOwogICAgICAgICByYW5kb21Mb2Nh
dGlvbiA8PD0gMjE7CisjZW5kaWYKICAgICAgICAgbV9iYXNlID0gbW1hcChyZWludGVycHJldF9j
YXN0PHZvaWQqPihyYW5kb21Mb2NhdGlvbiksIG1fdG90YWxIZWFwU2l6ZSwgSU5JVElBTF9QUk9U
RUNUSU9OX0ZMQUdTLCBNQVBfUFJJVkFURSB8IE1BUF9BTk9OLCBWTV9UQUdfRk9SX0VYRUNVVEFC
TEVBTExPQ0FUT1JfTUVNT1JZLCAwKTsKICAgICAgICAgaWYgKCFtX2Jhc2UpCiAgICAgICAgICAg
ICBDUkFTSCgpOwpAQCAtMzg3LDcgKzM5OSw3IEBAIHB1YmxpYzoKICAgICAgICAgLy8gMTZNQiBv
ZiBhbGxvY2F0aW9ucyBoYXZlIGJlZW4gZnJlZWQsIHN3ZWVwIG1fZnJlZUxpc3QKICAgICAgICAg
Ly8gY29hbGVzY2luZyBhbnkgbmVpZ2hib3JpbmcgZnJhZ21lbnRzLgogICAgICAgICBtX2NvdW50
RnJlZWRTaW5jZUxhc3RDb2FsZXNjZSArPSBzaXplOwotICAgICAgICBpZiAobV9jb3VudEZyZWVk
U2luY2VMYXN0Q29hbGVzY2UgPj0gU0lYVEVFTl9NQikgeworICAgICAgICBpZiAobV9jb3VudEZy
ZWVkU2luY2VMYXN0Q29hbGVzY2UgPj0gQ09BTEVTQ0VfTElNSVQpIHsKICAgICAgICAgICAgIG1f
Y291bnRGcmVlZFNpbmNlTGFzdENvYWxlc2NlID0gMDsKICAgICAgICAgICAgIGNvYWxlc2NlRnJl
ZVNwYWNlKCk7CiAgICAgICAgIH0KQEAgLTQyOSw3ICs0NDEsNyBAQCBFeGVjdXRhYmxlUG9vbDo6
QWxsb2NhdGlvbiBFeGVjdXRhYmxlUG9vCiAgIFNwaW5Mb2NrSG9sZGVyIGxvY2tfaG9sZGVyKCZz
cGlubG9jayk7CiAKICAgICBpZiAoIWFsbG9jYXRvcikKLSAgICAgICAgYWxsb2NhdG9yID0gbmV3
IEZpeGVkVk1Qb29sQWxsb2NhdG9yKEpJVF9BTExPQ0FUT1JfTEFSR0VfQUxMT0NfU0laRSwgVFdP
X0dCKTsKKyAgICAgICAgYWxsb2NhdG9yID0gbmV3IEZpeGVkVk1Qb29sQWxsb2NhdG9yKEpJVF9B
TExPQ0FUT1JfTEFSR0VfQUxMT0NfU0laRSwgVk1fUE9PTF9TSVpFKTsKICAgICBFeGVjdXRhYmxl
UG9vbDo6QWxsb2NhdGlvbiBhbGxvYyA9IHtyZWludGVycHJldF9jYXN0PGNoYXIqPihhbGxvY2F0
b3ItPmFsbG9jKHNpemUpKSwgc2l6ZX07CiAgICAgcmV0dXJuIGFsbG9jOwogfQpJbmRleDogSmF2
YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3JQb3NpeC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3JQb3NpeC5jcHAJKHJldmlz
aW9uIDYyNDcyKQorKysgSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVBbGxvY2F0b3JQb3Np
eC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3LDcgKzI3LDcgQEAKIAogI2luY2x1ZGUgIkV4ZWN1
dGFibGVBbGxvY2F0b3IuaCIKIAotI2lmIEVOQUJMRShBU1NFTUJMRVIpICYmIE9TKFVOSVgpICYm
ICFPUyhTWU1CSUFOKQorI2lmIEVOQUJMRShFWEVDVVRBQkxFX0FMTE9DQVRPUl9ERU1BTkQpICYm
ICFPUyhXSU5ET1dTKSAmJiAhT1MoU1lNQklBTikKIAogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAj
aW5jbHVkZSA8dW5pc3RkLmg+CkBAIC0zNSw4ICszNSw2IEBACiAKIG5hbWVzcGFjZSBKU0Mgewog
Ci0jaWYgIShPUyhEQVJXSU4pICYmIENQVShYODZfNjQpKQotCiB2b2lkIEV4ZWN1dGFibGVBbGxv
Y2F0b3I6OmludGlhbGl6ZVBhZ2VTaXplKCkKIHsKICAgICBFeGVjdXRhYmxlQWxsb2NhdG9yOjpw
YWdlU2l6ZSA9IGdldHBhZ2VzaXplKCk7CkBAIC01Nyw0NCArNTUsNiBAQCB2b2lkIEV4ZWN1dGFi
bGVQb29sOjpzeXN0ZW1SZWxlYXNlKGNvbnN0CiAgICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsICFy
ZXN1bHQpOwogfQogCi0jZW5kaWYgLy8gIShPUyhEQVJXSU4pICYmIENQVShYODZfNjQpKQotCi0j
aWYgRU5BQkxFKEFTU0VNQkxFUl9XWF9FWENMVVNJVkUpCi12b2lkIEV4ZWN1dGFibGVBbGxvY2F0
b3I6OnJlcHJvdGVjdFJlZ2lvbih2b2lkKiBzdGFydCwgc2l6ZV90IHNpemUsIFByb3RlY3Rpb25T
ZXRpbmcgc2V0dGluZykKLXsKLSAgICBpZiAoIXBhZ2VTaXplKQotICAgICAgICBpbnRpYWxpemVQ
YWdlU2l6ZSgpOwotCi0gICAgLy8gQ2FsY3VsYXRlIHRoZSBzdGFydCBvZiB0aGUgcGFnZSBjb250
YWluaW5nIHRoaXMgcmVnaW9uLAotICAgIC8vIGFuZCBhY2NvdW50IGZvciB0aGlzIGV4dHJhIG1l
bW9yeSB3aXRoaW4gc2l6ZS4KLSAgICBpbnRwdHJfdCBzdGFydFB0ciA9IHJlaW50ZXJwcmV0X2Nh
c3Q8aW50cHRyX3Q+KHN0YXJ0KTsKLSAgICBpbnRwdHJfdCBwYWdlU3RhcnRQdHIgPSBzdGFydFB0
ciAmIH4ocGFnZVNpemUgLSAxKTsKLSAgICB2b2lkKiBwYWdlU3RhcnQgPSByZWludGVycHJldF9j
YXN0PHZvaWQqPihwYWdlU3RhcnRQdHIpOwotICAgIHNpemUgKz0gKHN0YXJ0UHRyIC0gcGFnZVN0
YXJ0UHRyKTsKLQotICAgIC8vIFJvdW5kIHNpemUgdXAKLSAgICBzaXplICs9IChwYWdlU2l6ZSAt
IDEpOwotICAgIHNpemUgJj0gfihwYWdlU2l6ZSAtIDEpOwotCi0gICAgbXByb3RlY3QocGFnZVN0
YXJ0LCBzaXplLCAoc2V0dGluZyA9PSBXcml0YWJsZSkgPyBQUk9URUNUSU9OX0ZMQUdTX1JXIDog
UFJPVEVDVElPTl9GTEFHU19SWCk7CiB9Ci0jZW5kaWYKIAotI2lmIENQVShBUk1fVFJBRElUSU9O
QUwpICYmIE9TKExJTlVYKSAmJiBDT01QSUxFUihSVkNUKQotX19hc20gdm9pZCBFeGVjdXRhYmxl
QWxsb2NhdG9yOjpjYWNoZUZsdXNoKHZvaWQqIGNvZGUsIHNpemVfdCBzaXplKQotewotICAgIEFS
TQotICAgIHB1c2gge3I3fQotICAgIGFkZCByMSwgcjEsIHIwCi0gICAgbW92IHI3LCAjMHhmMDAw
MAotICAgIGFkZCByNywgcjcsICMweDIKLSAgICBtb3YgcjIsICMweDAKLSAgICBzdmMgIzB4MAot
ICAgIHBvcCB7cjd9Ci0gICAgYnggbHIKLX0KICNlbmRpZgotCi19Ci0KLSNlbmRpZiAvLyBIQVZF
KEFTU0VNQkxFUikKSW5kZXg6IEphdmFTY3JpcHRDb3JlL2ppdC9FeGVjdXRhYmxlQWxsb2NhdG9y
U3ltYmlhbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvaml0L0V4ZWN1dGFibGVB
bGxvY2F0b3JTeW1iaWFuLmNwcAkocmV2aXNpb24gNjI0NzIpCisrKyBKYXZhU2NyaXB0Q29yZS9q
aXQvRXhlY3V0YWJsZUFsbG9jYXRvclN5bWJpYW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMiw3
ICsyMiw3IEBACiAKICNpbmNsdWRlICJFeGVjdXRhYmxlQWxsb2NhdG9yLmgiCiAKLSNpZiBFTkFC
TEUoQVNTRU1CTEVSKSAmJiBPUyhTWU1CSUFOKQorI2lmIEVOQUJMRShFWEVDVVRBQkxFX0FMTE9D
QVRPUl9ERU1BTkQpICYmIE9TKFNZTUJJQU4pCiAKICNpbmNsdWRlIDxlMzJoYWwuaD4KICNpbmNs
dWRlIDxlMzJzdGQuaD4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2ppdC9FeGVjdXRhYmxlQWxsb2Nh
dG9yV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9qaXQvRXhlY3V0YWJsZUFs
bG9jYXRvcldpbi5jcHAJKHJldmlzaW9uIDYyNDcyKQorKysgSmF2YVNjcmlwdENvcmUvaml0L0V4
ZWN1dGFibGVBbGxvY2F0b3JXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBA
CiAKICNpbmNsdWRlICJFeGVjdXRhYmxlQWxsb2NhdG9yLmgiCiAKLSNpZiBFTkFCTEUoQVNTRU1C
TEVSKSAmJiBPUyhXSU5ET1dTKQorI2lmIEVOQUJMRShFWEVDVVRBQkxFX0FMTE9DQVRPUl9ERU1B
TkQpICYmIE9TKFdJTkRPV1MpCiAKICNpbmNsdWRlICJ3aW5kb3dzLmgiCiAKSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL3d0
Zi9QbGF0Zm9ybS5oCShyZXZpc2lvbiA2MjQ3MikKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9QbGF0
Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDQzLDYgKzEwNDMsMTYgQEAgb24gTWluR1cuIFNl
ZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaAogI2RlZmluZSBFTkFCTEVfQVNTRU1CTEVSX1dY
X0VYQ0xVU0lWRSAwCiAjZW5kaWYKIAorLyogUGljayB3aGljaCBhbGxvY2F0b3IgdG8gdXNlOyB3
ZSBvbmx5IG5lZWQgYW4gZXhlY3V0YWJsZSBhbGxvY2F0b3IgaWYgdGhlIGFzc2VtYmxlciBpcyBj
b21waWxlZCBpbi4KKyAgIE9uIHg4Ni02NCB3ZSB1c2UgYSBzaW5nbGUgZml4ZWQgbW1hcCwgb24g
b3RoZXIgcGxhdGZvcm1zIHdlIG1tYXAgb24gZGVtYW5kLiAqLworI2lmIEVOQUJMRShBU1NFTUJM
RVIpCisjaWYgQ1BVKFg4Nl82NCkKKyNkZWZpbmUgRU5BQkxFX0VYRUNVVEFCTEVfQUxMT0NBVE9S
X0ZJWEVEIDEKKyNlbHNlCisjZGVmaW5lIEVOQUJMRV9FWEVDVVRBQkxFX0FMTE9DQVRPUl9ERU1B
TkQgMQorI2VuZGlmCisjZW5kaWYKKwogI2lmICFkZWZpbmVkKEVOQUJMRV9QQU5fU0NST0xMSU5H
KSAmJiBPUyhXSU5ET1dTKQogI2RlZmluZSBFTkFCTEVfUEFOX1NDUk9MTElORyAxCiAjZW5kaWYK
</data>
<flag name="review"
          id="48143"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>