<?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>225008</bug_id>
          
          <creation_ts>2021-04-23 16:17:22 -0700</creation_ts>
          <short_desc>Handle warning-level memory notifications more aggressively</short_desc>
          <delta_ts>2021-04-26 16:04:27 -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>New Bugs</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ben Nham">nham</reporter>
          <assigned_to name="Ben Nham">nham</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>nham</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1753784</commentid>
    <comment_count>0</comment_count>
    <who name="Ben Nham">nham</who>
    <bug_when>2021-04-23 16:17:22 -0700</bug_when>
    <thetext>Handle warning-level memory notifications more aggressively</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753788</commentid>
    <comment_count>1</comment_count>
      <attachid>426963</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2021-04-23 16:22:52 -0700</bug_when>
    <thetext>Created attachment 426963
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753789</commentid>
    <comment_count>2</comment_count>
      <attachid>426963</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2021-04-23 16:23:27 -0700</bug_when>
    <thetext>Comment on attachment 426963
Patch

initial pass for testing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1753790</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-23 16:24:07 -0700</bug_when>
    <thetext>&lt;rdar://problem/77091307&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754343</commentid>
    <comment_count>4</comment_count>
      <attachid>427086</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2021-04-26 13:30:34 -0700</bug_when>
    <thetext>Created attachment 427086
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754364</commentid>
    <comment_count>5</comment_count>
      <attachid>427086</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-26 14:04:28 -0700</bug_when>
    <thetext>Comment on attachment 427086
Patch

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

&gt; Source/WTF/wtf/PlatformEnableCocoa.h:353
&gt; +#define ENABLE_AGGRESSIVE_MEMORYPRESSURE_HANDLING 1

Maybe ENABLE_AGGRESSIVE_MEMORYPRESSURE_HANDLING_IN_BACKGROUND_PROCESSES ?

But overall, I am not sure we really need/want a build flag at all? What&apos;s the worry on iOS? Usually background processes on iOS will be suspended. If they are not because of some kind of process assertion, then why not treat these memory warnings as critical?
I think we should try and keep things cross-platform as much as possible.

&gt; Source/WebKit/WebProcess/WebProcess.cpp:389
&gt; +        if (m_pagesInWindows.isEmpty() &amp;&amp; critical == Critical::No)

I have some concerns about m_pagesInWindows being possibly out of date. In particular, shouldn&apos;t we remove a WebPage from m_pagesInWindows in WebProcess::removeWebPage()? I&apos;d feel a lot more confident stale pages could not be in m_pagesInWindows if we did that. I guess I could convinced myself that pageDidLeaveWindow MUST be called before WebProcess::removeWebPage() but it seems fragile.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754395</commentid>
    <comment_count>6</comment_count>
    <who name="Ben Nham">nham</who>
    <bug_when>2021-04-26 14:47:19 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #5)
&gt; Comment on attachment 427086 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=427086&amp;action=review
&gt; 
&gt; &gt; Source/WTF/wtf/PlatformEnableCocoa.h:353
&gt; &gt; +#define ENABLE_AGGRESSIVE_MEMORYPRESSURE_HANDLING 1
&gt; 
&gt; Maybe ENABLE_AGGRESSIVE_MEMORYPRESSURE_HANDLING_IN_BACKGROUND_PROCESSES ?
&gt; 
&gt; But overall, I am not sure we really need/want a build flag at all? What&apos;s
&gt; the worry on iOS? Usually background processes on iOS will be suspended. If
&gt; they are not because of some kind of process assertion, then why not treat
&gt; these memory warnings as critical?
&gt; I think we should try and keep things cross-platform as much as possible.

Good point, I think I&apos;ll remove the ifdef.

&gt; &gt; Source/WebKit/WebProcess/WebProcess.cpp:389
&gt; &gt; +        if (m_pagesInWindows.isEmpty() &amp;&amp; critical == Critical::No)
&gt; 
&gt; I have some concerns about m_pagesInWindows being possibly out of date. In
&gt; particular, shouldn&apos;t we remove a WebPage from m_pagesInWindows in
&gt; WebProcess::removeWebPage()? I&apos;d feel a lot more confident stale pages could
&gt; not be in m_pagesInWindows if we did that. I guess I could convinced myself
&gt; that pageDidLeaveWindow MUST be called before WebProcess::removeWebPage()
&gt; but it seems fragile.

Hmm, I&apos;m not sure how m_pagesInWindows would be out of date. WebProcess::removeWebPage calls WebProcess::pageWillLeaveWindow so that leaves m_pagesInWindows in a consistent state at the end of that run loop iteration. And the memory pressure handler also runs in the main run loop so it will see m_pagesInWindows in a consistent state. Am I missing something here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754398</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-26 14:50:55 -0700</bug_when>
    <thetext>(In reply to Ben Nham from comment #6)
&gt; (In reply to Chris Dumez from comment #5)
&gt; &gt; Comment on attachment 427086 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=427086&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WTF/wtf/PlatformEnableCocoa.h:353
&gt; &gt; &gt; +#define ENABLE_AGGRESSIVE_MEMORYPRESSURE_HANDLING 1
&gt; &gt; 
&gt; &gt; Maybe ENABLE_AGGRESSIVE_MEMORYPRESSURE_HANDLING_IN_BACKGROUND_PROCESSES ?
&gt; &gt; 
&gt; &gt; But overall, I am not sure we really need/want a build flag at all? What&apos;s
&gt; &gt; the worry on iOS? Usually background processes on iOS will be suspended. If
&gt; &gt; they are not because of some kind of process assertion, then why not treat
&gt; &gt; these memory warnings as critical?
&gt; &gt; I think we should try and keep things cross-platform as much as possible.
&gt; 
&gt; Good point, I think I&apos;ll remove the ifdef.
&gt; 
&gt; &gt; &gt; Source/WebKit/WebProcess/WebProcess.cpp:389
&gt; &gt; &gt; +        if (m_pagesInWindows.isEmpty() &amp;&amp; critical == Critical::No)
&gt; &gt; 
&gt; &gt; I have some concerns about m_pagesInWindows being possibly out of date. In
&gt; &gt; particular, shouldn&apos;t we remove a WebPage from m_pagesInWindows in
&gt; &gt; WebProcess::removeWebPage()? I&apos;d feel a lot more confident stale pages could
&gt; &gt; not be in m_pagesInWindows if we did that. I guess I could convinced myself
&gt; &gt; that pageDidLeaveWindow MUST be called before WebProcess::removeWebPage()
&gt; &gt; but it seems fragile.
&gt; 
&gt; Hmm, I&apos;m not sure how m_pagesInWindows would be out of date.
&gt; WebProcess::removeWebPage calls WebProcess::pageWillLeaveWindow so that
&gt; leaves m_pagesInWindows in a consistent state at the end of that run loop
&gt; iteration. And the memory pressure handler also runs in the main run loop so
&gt; it will see m_pagesInWindows in a consistent state. Am I missing something
&gt; here?

No, you are right. I missed that WebProcess::removeWebPage() was calling pageWillLeaveWindow(). All good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754399</commentid>
    <comment_count>8</comment_count>
      <attachid>427086</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-26 14:51:18 -0700</bug_when>
    <thetext>Comment on attachment 427086
Patch

r=me but ideally without ifdef.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754403</commentid>
    <comment_count>9</comment_count>
      <attachid>427095</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2021-04-26 14:56:02 -0700</bug_when>
    <thetext>Created attachment 427095
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754420</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-26 16:04:25 -0700</bug_when>
    <thetext>Committed r276618 (237047@main): &lt;https://commits.webkit.org/237047@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427095.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426963</attachid>
            <date>2021-04-23 16:22:52 -0700</date>
            <delta_ts>2021-04-26 13:30:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225008-20210423162251.patch</filename>
            <type>text/plain</type>
            <size>2678</size>
            <attacher name="Ben Nham">nham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDYxZDhhZmFjOGM2MmUwZDlmMTI3NTFj
ZGNmNjFhNDUzMzEwOGNiYzcuLjJhOGM3YmU0ZjRlZDBmODlkNWUwNTJjNDUzNWFmNDczOGJhYjcx
YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjEtMDQtMjMgIEJlbiBOaGFtICA8bmhhbUBhcHBs
ZS5jb20+CisKKyAgICAgICAgSGFuZGxlIHdhcm5pbmctbGV2ZWwgbWVtb3J5IG5vdGlmaWNhdGlv
bnMgbW9yZSBhZ2dyZXNzaXZlbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNTAwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdlJ3ZlIGZvdW5kIHRoYXQgaW4gc29tZSB3b3JrbG9hZHMsIHRoZSBjcml0
aWNhbC1sZXZlbCBtZW1vcnkgcHJlc3N1cmUgaGFuZGxlciByZWxlYXNlcworICAgICAgICBzaWdu
aWZpY2FudGx5IG1vcmUgbWVtb3J5IHRoYW4gdGhlIHdhcm5pbmctbGV2ZWwgbWVtb3J5IHByZXNz
dXJlIGhhbmRsZXIuIE9uIE1hY3MsIGl0IGlzCisgICAgICAgIGxpa2VseSB0aGF0IHRoZSBtZW1v
cnkgcHJlc3N1cmUgY29pbmNpZGVzIHdpdGggc3dhcHBpbmcuIFNvIHdoZW4gd2UgZ2V0IGV2ZW4g
YSB3YXJuaW5nLWxldmVsCisgICAgICAgIG5vdGlmaWNhdGlvbiBmcm9tIHRoZSBPUywgd2Ugc2hv
dWxkIGVyciBvbiB0aGUgc2lkZSBvZiByZWxlYXNpbmcgbW9yZSBtZW1vcnkgdG8gaGVscCByZWxp
ZXZlCisgICAgICAgIHRoZSBzd2FwcGluZyBzdGF0ZS4gVG8gZG8gdGhpcywgdHJlYXQgd2Fybmlu
ZyBsZXZlbCBub3RpZmljYXRpb25zIHRoZSBzYW1lIGFzIGNyaXRpY2FsIGxldmVsCisgICAgICAg
IG5vdGlmaWNhdGlvbnMgb24gTWFjLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxlQ29j
b2EuaDoKKyAgICAgICAgKiB3dGYvY29jb2EvTWVtb3J5UHJlc3N1cmVIYW5kbGVyQ29jb2EubW06
CisgICAgICAgIChXVEY6Ok1lbW9yeVByZXNzdXJlSGFuZGxlcjo6aW5zdGFsbCk6CisKIDIwMjEt
MDQtMjMgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBk
ZWNvZGVyIG1lbW9yeSBhbGxvY2F0aW9ucyBiYXNlZCBvbiB1bnRydXN0ZWQgZGF0YSAoc2l6ZXMp
IGluIHRoZSBzdHJlYW07IHJlbGF0ZWQgY2hhbmdlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93
dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVD
b2NvYS5oCmluZGV4IDg1ZjRlMGFjNDk1OTcxY2U1MzU2NjMxODEwODU5ODY1NzMyMWE0MWQuLjhl
NWJhZmEzMGI2YzJhN2E4ZTVjNmY1NTdkM2IzOTA2MGJiNTJlZWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2EuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0
Zm9ybUVuYWJsZUNvY29hLmgKQEAgLTM0OSw2ICszNDksMTAgQEAKICNkZWZpbmUgRU5BQkxFX01F
RElBX1VTQUdFIDEKICNlbmRpZgogCisjaWYgIWRlZmluZWQoRU5BQkxFX0hBTkRMRV9NRU1PUllQ
UkVTU1VSRV9XQVJOX0FTX0NSSVRJQ0FMKSAmJiBQTEFURk9STShNQUMpCisjZGVmaW5lIEVOQUJM
RV9IQU5ETEVfTUVNT1JZUFJFU1NVUkVfV0FSTl9BU19DUklUSUNBTCAxCisjZW5kaWYKKwogI2lm
ICFkZWZpbmVkKEVOQUJMRV9NRU1PUllfU0FNUExFUikKICNkZWZpbmUgRU5BQkxFX01FTU9SWV9T
QU1QTEVSIDEKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvY29jb2EvTWVtb3J5
UHJlc3N1cmVIYW5kbGVyQ29jb2EubW0gYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVz
c3VyZUhhbmRsZXJDb2NvYS5tbQppbmRleCAzZTU1NjQ0ZDYyYTUzZTA3ZmRiZDNjYTcyNzQ2MWIy
ZDU2NGI0YmI5Li45YThkMjUwY2ZjYjRjZTgyYmYxOTNhYTNmZTMwNzE2YjcwMTExM2JhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVzc3VyZUhhbmRsZXJDb2NvYS5t
bQorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVzc3VyZUhhbmRsZXJDb2NvYS5t
bQpAQCAtODIsNiArODIsMTIgQEAgdm9pZCBNZW1vcnlQcmVzc3VyZUhhbmRsZXI6Omluc3RhbGwo
KQogCiAgICAgICAgIGRpc3BhdGNoX3NvdXJjZV9zZXRfZXZlbnRfaGFuZGxlcihtZW1vcnlQcmVz
c3VyZUV2ZW50U291cmNlLCBeewogICAgICAgICAgICAgYXV0byBzdGF0dXMgPSBkaXNwYXRjaF9z
b3VyY2VfZ2V0X2RhdGEobWVtb3J5UHJlc3N1cmVFdmVudFNvdXJjZSk7CisKKyNpZiBFTkFCTEUo
SEFORExFX01FTU9SWVBSRVNTVVJFX1dBUk5fQVNfQ1JJVElDQUwpCisgICAgICAgICAgICBpZiAo
c3RhdHVzID09IERJU1BBVENIX01FTU9SWVBSRVNTVVJFX1dBUk4pCisgICAgICAgICAgICAgICAg
c3RhdHVzID0gRElTUEFUQ0hfTUVNT1JZUFJFU1NVUkVfQ1JJVElDQUw7CisjZW5kaWYKKwogICAg
ICAgICAgICAgc3dpdGNoIChzdGF0dXMpIHsKICAgICAgICAgICAgIC8vIFZNIHByZXNzdXJlIGV2
ZW50cy4KICAgICAgICAgICAgIGNhc2UgRElTUEFUQ0hfTUVNT1JZUFJFU1NVUkVfTk9STUFMOgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427086</attachid>
            <date>2021-04-26 13:30:34 -0700</date>
            <delta_ts>2021-04-26 14:56:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225008-20210426133034.patch</filename>
            <type>text/plain</type>
            <size>3572</size>
            <attacher name="Ben Nham">nham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDYxZDhhZmFjOGM2MmUwZDlmMTI3NTFj
ZGNmNjFhNDUzMzEwOGNiYzcuLmY5OGY3Njg4YzFmOTI0ZmNmY2ZkYTI1ZTZlNjIwMzU4ZTY1YzI2
ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDQtMjMgIEJlbiBOaGFtICA8bmhhbUBhcHBs
ZS5jb20+CisKKyAgICAgICAgSGFuZGxlIHdhcm5pbmctbGV2ZWwgbWVtb3J5IG5vdGlmaWNhdGlv
bnMgbW9yZSBhZ2dyZXNzaXZlbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyNTAwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFkZCBhbiBvcHRpb24gdG8gaGFuZGxlIHdhcm5pbmctbGV2ZWwgbWVtb3J5
IG5vdGlmaWNhdGlvbnMgYXMgaWYgdGhleSB3ZXJlIGNyaXRpY2FsLWxldmVsLgorCisgICAgICAg
ICogd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2EuaDoKKwogMjAyMS0wNC0yMyAgRGFyaW4gQWRsZXIg
IDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIGRlY29kZXIgbWVtb3J5IGFsbG9j
YXRpb25zIGJhc2VkIG9uIHVudHJ1c3RlZCBkYXRhIChzaXplcykgaW4gdGhlIHN0cmVhbTsgcmVs
YXRlZCBjaGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGNiNmJmNTYzZGY5ZWJlZmEwZDU2OWQzN2ViMmM0ZTRm
Zjk0MzVjNDMuLjlhYTdhMWRiZDU5ZGI4ZGZkYTgxODU5NmY3ZWIxOGViODUzZmExNDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjEtMDQtMjMgIEJlbiBOaGFtICA8bmhhbUBhcHBsZS5j
b20+CisKKyAgICAgICAgSGFuZGxlIHdhcm5pbmctbGV2ZWwgbWVtb3J5IG5vdGlmaWNhdGlvbnMg
bW9yZSBhZ2dyZXNzaXZlbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyNTAwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdlJ3ZlIGZvdW5kIHRoYXQgaW4gc29tZSB3b3JrbG9hZHMsIHRoZSBjcml0aWNh
bC1sZXZlbCBtZW1vcnkgcHJlc3N1cmUgaGFuZGxlciByZWxlYXNlcworICAgICAgICBzaWduaWZp
Y2FudGx5IG1vcmUgbWVtb3J5IHRoYW4gdGhlIHdhcm5pbmctbGV2ZWwgbWVtb3J5IHByZXNzdXJl
IGhhbmRsZXIuIE9uIE1hY3MsIGl0IGlzCisgICAgICAgIGxpa2VseSB0aGF0IHRoZSBtZW1vcnkg
cHJlc3N1cmUgY29pbmNpZGVzIHdpdGggc3dhcHBpbmcuIFNvIHdoZW4gd2UgZ2V0IGV2ZW4gYSB3
YXJuaW5nLWxldmVsCisgICAgICAgIG5vdGlmaWNhdGlvbiBmcm9tIHRoZSBPUywgd2Ugc2hvdWxk
IGVyciBvbiB0aGUgc2lkZSBvZiByZWxlYXNpbmcgbW9yZSBtZW1vcnkgdG8gaGVscCByZWxpZXZl
CisgICAgICAgIHRoZSBzd2FwcGluZyBzdGF0ZS4gVG8gZG8gdGhpcywgdHJlYXQgd2FybmluZyBs
ZXZlbCBub3RpZmljYXRpb25zIHRoZSBzYW1lIGFzIGNyaXRpY2FsIGxldmVsCisgICAgICAgIG5v
dGlmaWNhdGlvbnMgb24gTWFjLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgor
CiAyMDIxLTA0LTIzICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAog
ICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI3NTU2Mi4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2EuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
RW5hYmxlQ29jb2EuaAppbmRleCA4NWY0ZTBhYzQ5NTk3MWNlNTM1NjYzMTgxMDg1OTg2NTczMjFh
NDFkLi4wMGIyYjc0OWQxY2JlZjZkNmI1NmY1YTFiNWQ2MWRlMzVjZDQ3MThjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmgKKysrIGIvU291cmNlL1dURi93
dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCkBAIC0zNDksNiArMzQ5LDEwIEBACiAjZGVmaW5lIEVO
QUJMRV9NRURJQV9VU0FHRSAxCiAjZW5kaWYKIAorI2lmICFkZWZpbmVkKEVOQUJMRV9BR0dSRVNT
SVZFX01FTU9SWVBSRVNTVVJFX0hBTkRMSU5HKSAmJiAoUExBVEZPUk0oTUFDKSB8fCBQTEFURk9S
TShNQUNDQVRBTFlTVCkpCisjZGVmaW5lIEVOQUJMRV9BR0dSRVNTSVZFX01FTU9SWVBSRVNTVVJF
X0hBTkRMSU5HIDEKKyNlbmRpZgorCiAjaWYgIWRlZmluZWQoRU5BQkxFX01FTU9SWV9TQU1QTEVS
KQogI2RlZmluZSBFTkFCTEVfTUVNT1JZX1NBTVBMRVIgMQogI2VuZGlmCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggYmI0Y2NkYjZmOTMzMTlhZTVkZWNiZDU2YmQ2
YTBlMDA1NWQ3NDY0Yy4uMGFmMDkyNGU1MGU5Mjk4NGYwODM1Y2IwMzAzNTgzOWI3NmE2NjEzOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtMzg1LDYgKzM4NSwx
MSBAQCB2b2lkIFdlYlByb2Nlc3M6OmluaXRpYWxpemVXZWJQcm9jZXNzKFdlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogICAgIGlmICghbV9zdXBwcmVzc01lbW9yeVBy
ZXNzdXJlSGFuZGxlcikgewogICAgICAgICBhdXRvJiBtZW1vcnlQcmVzc3VyZUhhbmRsZXIgPSBN
ZW1vcnlQcmVzc3VyZUhhbmRsZXI6OnNpbmdsZXRvbigpOwogICAgICAgICBtZW1vcnlQcmVzc3Vy
ZUhhbmRsZXIuc2V0TG93TWVtb3J5SGFuZGxlcihbdGhpc10gKENyaXRpY2FsIGNyaXRpY2FsLCBT
eW5jaHJvbm91cyBzeW5jaHJvbm91cykgeworI2lmIEVOQUJMRShBR0dSRVNTSVZFX01FTU9SWVBS
RVNTVVJFX0hBTkRMSU5HKQorICAgICAgICBpZiAobV9wYWdlc0luV2luZG93cy5pc0VtcHR5KCkg
JiYgY3JpdGljYWwgPT0gQ3JpdGljYWw6Ok5vKQorICAgICAgICAgICAgY3JpdGljYWwgPSBDcml0
aWNhbDo6WWVzOworI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpCiAgICAgICAgICAgICAvLyBJ
ZiB0aGlzIGlzIGEgcHJvY2VzcyB3ZSBrZWVwIGFyb3VuZCBmb3IgcGVyZm9ybWFuY2UsIGtpbGwg
aXQgb24gbWVtb3J5IHByZXNzdXJlIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZyZWUgdXAgaXRzIG1l
bW9yeS4KICAgICAgICAgICAgIGlmIChtX3Byb2Nlc3NUeXBlID09IFByb2Nlc3NUeXBlOjpDYWNo
ZWRXZWJDb250ZW50IHx8IG1fcHJvY2Vzc1R5cGUgPT0gUHJvY2Vzc1R5cGU6OlByZXdhcm1lZFdl
YkNvbnRlbnQgfHwgYXJlQWxsUGFnZXNTdXNwZW5kZWQoKSkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>427095</attachid>
            <date>2021-04-26 14:56:02 -0700</date>
            <delta_ts>2021-04-26 16:04:26 -0700</delta_ts>
            <desc>patch for landing</desc>
            <filename>bug-225008-20210426145601.patch</filename>
            <type>text/plain</type>
            <size>2528</size>
            <attacher name="Ben Nham">nham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc2NTI0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGNiNmJmNTYzZGY5ZWJlZmEw
ZDU2OWQzN2ViMmM0ZTRmZjk0MzVjNDMuLmUyNmFhODQ0OGM1ZmM2YTdjNTJhYjNlM2IxN2I3N2Zi
ZDg1MDY3YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjEtMDQtMjMgIEJlbiBOaGFt
ICA8bmhhbUBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIHdhcm5pbmctbGV2ZWwgbWVtb3J5
IG5vdGlmaWNhdGlvbnMgbW9yZSBhZ2dyZXNzaXZlbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTAwOAorCisgICAgICAgIFJldmlld2VkIGJ5IENo
cmlzIER1bWV6LgorCisgICAgICAgIFdlJ3ZlIGZvdW5kIHRoYXQgaW4gc29tZSB3b3JrbG9hZHMs
IHRoZSBjcml0aWNhbC1sZXZlbCBtZW1vcnkgcHJlc3N1cmUgaGFuZGxlciByZWxlYXNlcworICAg
ICAgICBzaWduaWZpY2FudGx5IG1vcmUgbWVtb3J5IHRoYW4gdGhlIHdhcm5pbmctbGV2ZWwgbWVt
b3J5IHByZXNzdXJlIGhhbmRsZXIuIE9uIE1hY3MsIGl0IGlzCisgICAgICAgIGxpa2VseSB0aGF0
IHRoZSBtZW1vcnkgcHJlc3N1cmUgY29pbmNpZGVzIHdpdGggc3dhcHBpbmcuIFNvIHdoZW4gd2Ug
Z2V0IGV2ZW4gYSB3YXJuaW5nLWxldmVsCisgICAgICAgIG5vdGlmaWNhdGlvbiBmcm9tIHRoZSBP
Uywgd2Ugc2hvdWxkIGVyciBvbiB0aGUgc2lkZSBvZiByZWxlYXNpbmcgbW9yZSBtZW1vcnkgdG8g
aGVscCByZWxpZXZlCisgICAgICAgIHRoZSBzd2FwcGluZyBzdGF0ZS4gVG8gZG8gdGhpcywgdHJl
YXQgd2FybmluZyBsZXZlbCBub3RpZmljYXRpb25zIHRoZSBzYW1lIGFzIGNyaXRpY2FsIGxldmVs
CisgICAgICAgIG5vdGlmaWNhdGlvbnMgb24gTWFjIGlmIHRoZSBXZWJQcm9jZXNzIGlzIGluIHRo
ZSBiYWNrZ3JvdW5kLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorCiAyMDIx
LTA0LTIzICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI3NTU2Mi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQcm9jZXNzLmNwcAppbmRleCBiYjRjY2RiNmY5MzMxOWFlNWRlY2JkNTZiZDZhMGUwMDU1ZDc0
NjRjLi40NGIwMWFhZjcwZmNjN2QxMjRkZGM1NjU5YTQ1NzgzNWRmNGNkMjI1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBAIC0zODUsNiArMzg1LDEyIEBAIHZvaWQg
V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MoV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMpCiAgICAgaWYgKCFtX3N1cHByZXNzTWVtb3J5UHJlc3N1cmVIYW5k
bGVyKSB7CiAgICAgICAgIGF1dG8mIG1lbW9yeVByZXNzdXJlSGFuZGxlciA9IE1lbW9yeVByZXNz
dXJlSGFuZGxlcjo6c2luZ2xldG9uKCk7CiAgICAgICAgIG1lbW9yeVByZXNzdXJlSGFuZGxlci5z
ZXRMb3dNZW1vcnlIYW5kbGVyKFt0aGlzXSAoQ3JpdGljYWwgY3JpdGljYWwsIFN5bmNocm9ub3Vz
IHN5bmNocm9ub3VzKSB7CisgICAgICAgICAgICAvLyBJZiB0aGlzIHByb2Nlc3MgY29udGFpbnMg
b25seSBub24tdmlzaWJsZSBjb250ZW50IChlLmcuIG9ubHkgY29udGFpbnMgYmFja2dyb3VuZAor
ICAgICAgICAgICAgLy8gdGFicyksIHRoZW4gdHJlYXQgdGhlIG1lbW9yeSB3YXJuaW5nIGFzIGlm
IGl0IHdhcyBhIGNyaXRpY2FsIHdhcm5pbmcgdG8gbWF4aW1pemUgdGhlCisgICAgICAgICAgICAv
LyBhbW91bnQgb2YgbWVtb3J5IHJlbGVhc2VkIGZvciBmb3JlZ3JvdW5kIGFwcHMgdG8gdXNlLgor
ICAgICAgICAgICAgaWYgKG1fcGFnZXNJbldpbmRvd3MuaXNFbXB0eSgpICYmIGNyaXRpY2FsID09
IENyaXRpY2FsOjpObykKKyAgICAgICAgICAgICAgICBjcml0aWNhbCA9IENyaXRpY2FsOjpZZXM7
CisKICNpZiBQTEFURk9STShNQUMpCiAgICAgICAgICAgICAvLyBJZiB0aGlzIGlzIGEgcHJvY2Vz
cyB3ZSBrZWVwIGFyb3VuZCBmb3IgcGVyZm9ybWFuY2UsIGtpbGwgaXQgb24gbWVtb3J5IHByZXNz
dXJlIGluc3RlYWQgb2YgdHJ5aW5nIHRvIGZyZWUgdXAgaXRzIG1lbW9yeS4KICAgICAgICAgICAg
IGlmIChtX3Byb2Nlc3NUeXBlID09IFByb2Nlc3NUeXBlOjpDYWNoZWRXZWJDb250ZW50IHx8IG1f
cHJvY2Vzc1R5cGUgPT0gUHJvY2Vzc1R5cGU6OlByZXdhcm1lZFdlYkNvbnRlbnQgfHwgYXJlQWxs
UGFnZXNTdXNwZW5kZWQoKSkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>