<?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>237398</bug_id>
          
          <creation_ts>2022-03-02 16:18:28 -0800</creation_ts>
          <short_desc>[macOS] WebContent processes crash with XPC_EXIT_REASON_SIGTERM_TIMEOUT when logging out</short_desc>
          <delta_ts>2022-03-10 16:29:20 -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>WebKit2</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1847666</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-02 16:18:28 -0800</bug_when>
    <thetext>WebContent processes crash with XPC_EXIT_REASON_SIGTERM_TIMEOUT when logging out of macOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847667</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-02 16:18:39 -0800</bug_when>
    <thetext>&lt;rdar://88940229&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847669</commentid>
    <comment_count>2</comment_count>
      <attachid>453674</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-02 16:23:58 -0800</bug_when>
    <thetext>Created attachment 453674
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847720</commentid>
    <comment_count>3</comment_count>
      <attachid>453674</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2022-03-02 19:05:16 -0800</bug_when>
    <thetext>Comment on attachment 453674
Patch

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

&gt; Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.mm:178
&gt; +            exit(0);

Is it safe to call exit from a signal handler? atexit functions could do arbitrary work, so I’d be looking at _exit().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847728</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-02 20:18:05 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #3)
&gt; Comment on attachment 453674 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=453674&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.mm:178
&gt; &gt; +            exit(0);
&gt; 
&gt; Is it safe to call exit from a signal handler? atexit functions could do
&gt; arbitrary work, so I’d be looking at _exit().

Well, we do want those atexit handlers to run though I think. It minimizes the odds of losing cookies and storage data.

What is the concern exactly? That the atexit handlers take too long and we reach the timeout and still get killed? Even if that’s the case, I would think it is preferable to at least try and run those handlers. Would be sad to lose some cookies or local storage data when logging out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1847972</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2022-03-03 10:35:23 -0800</bug_when>
    <thetext>My concern is that atexit handlers will be using functions that are unsafe in signal handler context (which is extremely restrictive), so we&apos;ll be getting memory corruption, hangs and such.

If we need to run these even after receiving SIGTERM, we need to ignore the signal, and to initiate a clean exit from run loop somehow (I don&apos;t know how exactly to do that from signal handler context).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848005</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-03 11:34:33 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #5)
&gt; My concern is that atexit handlers will be using functions that are unsafe
&gt; in signal handler context (which is extremely restrictive), so we&apos;ll be
&gt; getting memory corruption, hangs and such.
&gt; 
&gt; If we need to run these even after receiving SIGTERM, we need to ignore the
&gt; signal, and to initiate a clean exit from run loop somehow (I don&apos;t know how
&gt; exactly to do that from signal handler context).

I may be able to do the following in my signal handler:
1. Clear the OS transaction
2. Reset to the default signal handler
3. raise() the signal again 

I need to validate this to make sure it actually works in practice though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848014</commentid>
    <comment_count>7</comment_count>
      <attachid>453770</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-03 11:48:36 -0800</bug_when>
    <thetext>Created attachment 453770
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848015</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-03 11:49:37 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #6)
&gt; (In reply to Alexey Proskuryakov from comment #5)
&gt; &gt; My concern is that atexit handlers will be using functions that are unsafe
&gt; &gt; in signal handler context (which is extremely restrictive), so we&apos;ll be
&gt; &gt; getting memory corruption, hangs and such.
&gt; &gt; 
&gt; &gt; If we need to run these even after receiving SIGTERM, we need to ignore the
&gt; &gt; signal, and to initiate a clean exit from run loop somehow (I don&apos;t know how
&gt; &gt; exactly to do that from signal handler context).
&gt; 
&gt; I may be able to do the following in my signal handler:
&gt; 1. Clear the OS transaction
&gt; 2. Reset to the default signal handler
&gt; 3. raise() the signal again 
&gt; 
&gt; I need to validate this to make sure it actually works in practice though.

Ok, I implemented this alternative proposal that should be less controversial I hope.
I tested it manually and it seems to work just as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848021</commentid>
    <comment_count>9</comment_count>
      <attachid>453770</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-03-03 12:01:15 -0800</bug_when>
    <thetext>Comment on attachment 453770
Patch

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

&gt; Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.mm:180
&gt; +        signal(SIGTERM, [](int) {
&gt; +            globalTransaction.get() = nullptr;
&gt; +            signal(SIGTERM, SIG_DFL);
&gt; +            raise(SIGTERM);
&gt; +        });

This looks great. Really glad Alexey pointed out it was not OK to call exit. I tried to do some more research on &quot;cleanup and re-raise signal&quot; and see if it’s more elegantly done with sigaction instead of signal, but the examples I found are all like what you wrote here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848030</commentid>
    <comment_count>10</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2022-03-03 12:13:24 -0800</bug_when>
    <thetext>Looks good to me too. I&apos;m far from being an expert on writing code that works in signal handlers, but I couldn&apos;t find anything against this approach with a few web searches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848032</commentid>
    <comment_count>11</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-03 12:14:27 -0800</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #10)
&gt; Looks good to me too. I&apos;m far from being an expert on writing code that
&gt; works in signal handlers, but I couldn&apos;t find anything against this approach
&gt; with a few web searches.

Ok, thanks for pointing out the issue in the original proposal. TIL :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1848072</commentid>
    <comment_count>12</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-03 14:40:02 -0800</bug_when>
    <thetext>Committed r290795 (248035@main): &lt;https://commits.webkit.org/248035@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 453770.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850102</commentid>
    <comment_count>13</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-10 08:01:22 -0800</bug_when>
    <thetext>Reverted r290795 for reason:

Caused crashes &lt;rdar://problem/89970722&gt;

Committed r291110 (248272@trunk): &lt;https://commits.webkit.org/248272@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850104</commentid>
    <comment_count>14</comment_count>
      <attachid>454364</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-10 08:08:07 -0800</bug_when>
    <thetext>Created attachment 454364
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850105</commentid>
    <comment_count>15</comment_count>
      <attachid>454364</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-10 08:17:15 -0800</bug_when>
    <thetext>Comment on attachment 454364
Patch

Turns out I cannot even release the OS transaction in the signal handler. As a result, I am going back to Alexey&apos;s original proposal to call _exit(0).

Eventually we should just stop leaking this transaction (and adopt RunningBoard) but this is quite a bit of work and not risk free.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850250</commentid>
    <comment_count>16</comment_count>
      <attachid>454364</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2022-03-10 14:42:09 -0800</bug_when>
    <thetext>Comment on attachment 454364
Patch

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

&gt; Source/WebKit/ChangeLog:14
&gt; +        To address the issue, we now set our own SIGTERM handler that releases the OS transaction and calls _exit(0)

Please update the ChangeLog for updated patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850252</commentid>
    <comment_count>17</comment_count>
      <attachid>454403</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2022-03-10 14:47:42 -0800</bug_when>
    <thetext>Created attachment 454403
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850308</commentid>
    <comment_count>18</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-10 16:29:14 -0800</bug_when>
    <thetext>Committed r291137 (248297@main): &lt;https://commits.webkit.org/248297@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 454403.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453674</attachid>
            <date>2022-03-02 16:23:58 -0800</date>
            <delta_ts>2022-03-03 11:48:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237398-20220302162357.patch</filename>
            <type>text/plain</type>
            <size>5353</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNzU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGRkYzUyMmJmYzg1MDcyYThj
OWYzMzVjMzQ1ZDI5MzhiZWIxNDljYTguLjM1ZWQxZTk5MDkxMjI5MDlmN2RlZjlkNTExZmMzNWU5
OGRkMDk4MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjItMDMtMDIgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbbWFjT1NdIFdlYkNvbnRlbnQgcHJv
Y2Vzc2VzIGNyYXNoIHdpdGggWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElNRU9VVCB3aGVuIGxv
Z2dpbmcgb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzczOTgKKyAgICAgICAgPHJkYXI6Ly84ODk0MDIyOT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCZWNhdXNlIHdlIGRvbid0IHVzZSBSdW5uaW5n
Qm9hcmQgb24gbWFjT1MsIHdlIGxlYWsgYW4gT1MgdHJhbnNhY3Rpb24gdG8gY29udHJvbCB0aGUg
bGlmZXRpbWUgb2Ygb3VyIFhQQworICAgICAgICBzZXJ2aWNlcyBvdXJzZWx2ZXMuIEhvd2V2ZXIs
IG9uZSBvZiB0aGUgc2lkZSBlZmZlY3RzIG9mIGxlYWtpbmcgdGhpcyB0cmFuc2FjdGlvbiBpcyB0
aGF0IHRoZSBkZWZhdWx0IFNJR1RFUk0KKyAgICAgICAgaGFuZGxlciBkb2Vzbid0IGNsZWFubHkg
ZXhpdCBvdXIgWFBDIHNlcnZpY2VzIHdoZW4gbG9nZ2luZyBvdXQgb3IgcmVib290aW5nLiBUaGlz
IGxlZCB0byBjcmFzaGVzIHdpdGgKKyAgICAgICAgWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElN
RU9VVCBhcyB0ZXJtaW5hdGlvbiByZWFzb24gKHJkYXI6Ly84ODk0MDIyOSkuCisKKyAgICAgICAg
VG8gYWRkcmVzcyB0aGUgaXNzdWUsIHdlIG5vdyBzZXQgb3VyIG93biBTSUdURVJNIGhhbmRsZXIg
dGhhdCByZWxlYXNlcyB0aGUgT1MgdHJhbnNhY3Rpb24gYW5kIGNhbGxzIGV4aXQoMCkKKyAgICAg
ICAgdG8gZXhpdCBjbGVhbmx5LiBJbiB0aGUgZnV0dXJlLCB3ZSBzaG91bGQgbGlrZWx5IGFkb3B0
IFJ1bm5pbmdCb2FyZCBvbiBtYWNPUyBhbmQgY29udHJvbCBvdXIgbGlmZXRpbWUgdmlhCisgICAg
ICAgIHByb2Nlc3MgYXNzZXJ0aW9ucyBpbnN0ZWFkIG9mIGxlYWtpbmcgdGhpcyBPUyB0cmFuc2Fj
dGlvbi4KKworICAgICAgICAqIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1Nl
cnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQuaDoKKyAgICAgICAgKFdlYktpdDo6WFBDU2Vydmlj
ZUluaXRpYWxpemVyKToKKyAgICAgICAgKiBTaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2Nv
YS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lm1tOgorICAgICAgICAoV2ViS2l0Ojpz
ZXRPU1RyYW5zYWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6WFBDU2VydmljZUV4aXQpOgorICAg
ICAgICAoV2ViS2l0Ojpvc1RyYW5zYWN0aW9uKTogRGVsZXRlZC4KKwogMjAyMi0wMy0wMiAgQnJl
bnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBbQXBwU1NPXSBDb3Jy
ZWN0IGxvZ2dpbmcgbWVzc2FnZXMgdG8gYXZvaWQgY29uZnVzaW5nIHNjcmVlbmVycyB0aGF0IGFu
IGVycm9yIGhhcyBvY2N1cnJlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvRW50
cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZp
Y2UvWFBDU2VydmljZUVudHJ5UG9pbnQuaAppbmRleCBlYzg0YjFhOTQzNDkwZjcxNjAyMjM5NGUy
N2M4ZTkxZjBiOTZmYWJlLi5mZmIwMTRkNzMxYTMwMzcwMTg0NTFkZjQ5NjI2NmViYzk0NDA1YWUx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0Nv
Y29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZUVu
dHJ5UG9pbnQuaApAQCAtODIsNyArODIsNyBAQCB2b2lkIGluaXRpYWxpemVBdXhpbGlhcnlQcm9j
ZXNzKEF1eGlsaWFyeVByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmJiBwYXJhbQogfQog
CiAjaWYgUExBVEZPUk0oTUFDKQotT1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4mIG9zVHJh
bnNhY3Rpb24oKTsKK3ZvaWQgc2V0T1NUcmFuc2FjdGlvbihPU09iamVjdFB0cjxvc190cmFuc2Fj
dGlvbl90PiYmKTsKICNlbmRpZgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBYUENTZXJ2aWNlVHlwZSwg
dHlwZW5hbWUgWFBDU2VydmljZUluaXRpYWxpemVyRGVsZWdhdGVUeXBlPgpAQCAtMTEzLDcgKzEx
Myw3IEBAIHZvaWQgWFBDU2VydmljZUluaXRpYWxpemVyKE9TT2JqZWN0UHRyPHhwY19jb25uZWN0
aW9uX3Q+IGNvbm5lY3Rpb24sIHhwY19vYmplY3RfCiAgICAgLy8gc28gZW5zdXJlIHRoYXQgd2Ug
aGF2ZSBhbiBvdXRzdGFuZGluZyB0cmFuc2FjdGlvbiBoZXJlLiBUaGlzIGlzIG5vdCBuZWVkZWQg
b24gaU9TIGJlY2F1c2UKICAgICAvLyB0aGUgVUlQcm9jZXNzIHRha2VzIHByb2Nlc3MgYXNzZXJ0
aW9ucyBvbiBiZWhhbGYgb2YgaXRzIGNoaWxkIHByb2Nlc3Nlcy4KICNpZiBQTEFURk9STShNQUMp
Ci0gICAgb3NUcmFuc2FjdGlvbigpID0gYWRvcHRPU09iamVjdChvc190cmFuc2FjdGlvbl9jcmVh
dGUoIldlYktpdCBYUEMgU2VydmljZSIpKTsKKyAgICBzZXRPU1RyYW5zYWN0aW9uKGFkb3B0T1NP
YmplY3Qob3NfdHJhbnNhY3Rpb25fY3JlYXRlKCJXZWJLaXQgWFBDIFNlcnZpY2UiKSkpOwogI2Vu
ZGlmCiAKICAgICBJbml0aWFsaXplV2ViS2l0MigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VF
bnRyeVBvaW50Lm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9D
b2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lm1tCmluZGV4IDkyZTYyMTY5MjI5
ODAyZmRjZDEyZmY0MWUzYjYyNTlkYjJjNjRmMDQuLjI3NjBmMGM5NzdiNWQ3ZWViNzRjODljOGY2
ZTNlNzUzNTNiNDFhMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9p
bnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZp
Y2UvWFBDU2VydmljZUVudHJ5UG9pbnQubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpbXBvcnQgIlNh
bmRib3hVdGlsaXRpZXMuaCIKICNpbXBvcnQgIlhQQ1NlcnZpY2VFbnRyeVBvaW50LmgiCiAjaW1w
b3J0IDxXZWJDb3JlL1Byb2Nlc3NJZGVudGlmaWVyLmg+CisjaW1wb3J0IDxzaWduYWwuaD4KICNp
bXBvcnQgPHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KICNpbXBvcnQgPHd0Zi9zcGkvZGFyd2lu
L1NhbmRib3hTUEkuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1N0cmluZ1RvSW50ZWdlckNvbnZlcnNp
b24uaD4KQEAgLTE1OSwxMCArMTYwLDI2IEBAIGJvb2wgWFBDU2VydmljZUluaXRpYWxpemVyRGVs
ZWdhdGU6OmlzQ2xpZW50U2FuZGJveGVkKCkKIH0KIAogI2lmIFBMQVRGT1JNKE1BQykKLU9TT2Jq
ZWN0UHRyPG9zX3RyYW5zYWN0aW9uX3Q+JiBvc1RyYW5zYWN0aW9uKCkKK3ZvaWQgc2V0T1NUcmFu
c2FjdGlvbihPU09iamVjdFB0cjxvc190cmFuc2FjdGlvbl90PiYmIHRyYW5zYWN0aW9uKQogewot
ICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxPU09iamVjdFB0cjxvc190cmFuc2FjdGlvbl90Pj4g
dHJhbnNhY3Rpb247Ci0gICAgcmV0dXJuIHRyYW5zYWN0aW9uLmdldCgpOworICAgIHN0YXRpYyBO
ZXZlckRlc3Ryb3llZDxPU09iamVjdFB0cjxvc190cmFuc2FjdGlvbl90Pj4gZ2xvYmFsVHJhbnNh
Y3Rpb247CisKKyAgICAvLyBCZWNhdXNlIHdlIGRvbid0IHVzZSBSdW5uaW5nQm9hcmQgb24gbWFj
T1MsIHdlIGxlYWsgYW4gT1MgdHJhbnNhY3Rpb24gdG8gY29udHJvbCB0aGUgbGlmZXRpbWUgb2Yg
b3VyIFhQQworICAgIC8vIHNlcnZpY2VzIG91cnNlbHZlcy4gSG93ZXZlciwgb25lIG9mIHRoZSBz
aWRlIGVmZmVjdHMgb2YgbGVha2luZyB0aGlzIHRyYW5zYWN0aW9uIGlzIHRoYXQgdGhlIGRlZmF1
bHQgU0lHVEVSTQorICAgIC8vIGhhbmRsZXIgZG9lc24ndCBjbGVhbmx5IGV4aXQgb3VyIFhQQyBz
ZXJ2aWNlcyB3aGVuIGxvZ2dpbmcgb3V0IG9yIHJlYm9vdGluZy4gVGhpcyBsZWQgdG8gY3Jhc2hl
cyB3aXRoCisgICAgLy8gWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElNRU9VVCBhcyB0ZXJtaW5h
dGlvbiByZWFzb24gKHJkYXI6Ly84ODk0MDIyOSkuIFRvIGFkZHJlc3MgdGhlIGlzc3VlLCB3ZSBu
b3cgc2V0IG91cgorICAgIC8vIG93biBTSUdURVJNIGhhbmRsZXIgdGhhdCByZWxlYXNlcyB0aGUg
T1MgdHJhbnNhY3Rpb24gYW5kIGNhbGxzIGV4aXQoMCkgdG8gZXhpdCBjbGVhbmx5LiBJbiB0aGUg
ZnV0dXJlLCB3ZQorICAgIC8vIHNob3VsZCBsaWtlbHkgYWRvcHQgUnVubmluZ0JvYXJkIG9uIG1h
Y09TIGFuZCBjb250cm9sIG91ciBsaWZldGltZSB2aWEgcHJvY2VzcyBhc3NlcnRpb25zIGluc3Rl
YWQgb2YgbGVha2luZworICAgIC8vIHRoaXMgT1MgdHJhbnNhY3Rpb24uCisgICAgc3RhdGljIHN0
ZDo6b25jZV9mbGFnIG9uY2VLZXk7CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgW10gewor
ICAgICAgICBzaWduYWwoU0lHVEVSTSwgW10oaW50KSB7CisgICAgICAgICAgICBnbG9iYWxUcmFu
c2FjdGlvbi5nZXQoKSA9IG51bGxwdHI7CisgICAgICAgICAgICBleGl0KDApOworICAgICAgICB9
KTsKKyAgICB9KTsKKworICAgIGdsb2JhbFRyYW5zYWN0aW9uLmdldCgpID0gV1RGTW92ZSh0cmFu
c2FjdGlvbik7CiB9CiAjZW5kaWYKIApAQCAtMTcyLDcgKzE4OSw3IEBAIHZvaWQgWFBDU2Vydmlj
ZUV4aXQoT1NPYmplY3RQdHI8eHBjX29iamVjdF90PiYmIHByaW9yaXR5Qm9vc3RNZXNzYWdlKQog
ICAgIHByaW9yaXR5Qm9vc3RNZXNzYWdlID0gbnVsbHB0cjsKIAogI2lmIFBMQVRGT1JNKE1BQykK
LSAgICBvc1RyYW5zYWN0aW9uKCkgPSBudWxscHRyOworICAgIHNldE9TVHJhbnNhY3Rpb24obnVs
bHB0cik7CiAjZW5kaWYKIAogICAgIHhwY190cmFuc2FjdGlvbl9leGl0X2NsZWFuKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>453770</attachid>
            <date>2022-03-03 11:48:36 -0800</date>
            <delta_ts>2022-03-10 08:08:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237398-20220303114835.patch</filename>
            <type>text/plain</type>
            <size>5435</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwNjU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDZjN2UwNTA3MDE3YmFkZTQz
YzNlNDYyNzczODZlMTRhNzhhYmRmOTAuLmU0NWUxMTk3MGFjYjRlNDg2ODM4OTA4ZjQ0NmRkYTZj
ZGY3MmZkZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjItMDMtMDMgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbbWFjT1NdIFdlYkNvbnRlbnQgcHJv
Y2Vzc2VzIGNyYXNoIHdpdGggWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElNRU9VVCB3aGVuIGxv
Z2dpbmcgb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzczOTgKKyAgICAgICAgPHJkYXI6Ly84ODk0MDIyOT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCZWNhdXNlIHdlIGRvbid0IHVzZSBSdW5uaW5n
Qm9hcmQgb24gbWFjT1MsIHdlIGxlYWsgYW4gT1MgdHJhbnNhY3Rpb24gdG8gY29udHJvbCB0aGUg
bGlmZXRpbWUgb2Ygb3VyIFhQQworICAgICAgICBzZXJ2aWNlcyBvdXJzZWx2ZXMuIEhvd2V2ZXIs
IG9uZSBvZiB0aGUgc2lkZSBlZmZlY3RzIG9mIGxlYWtpbmcgdGhpcyB0cmFuc2FjdGlvbiBpcyB0
aGF0IHRoZSBkZWZhdWx0IFNJR1RFUk0KKyAgICAgICAgaGFuZGxlciBkb2Vzbid0IGNsZWFubHkg
ZXhpdCBvdXIgWFBDIHNlcnZpY2VzIHdoZW4gbG9nZ2luZyBvdXQgb3IgcmVib290aW5nLiBUaGlz
IGxlZCB0byBjcmFzaGVzIHdpdGgKKyAgICAgICAgWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElN
RU9VVCBhcyB0ZXJtaW5hdGlvbiByZWFzb24gKHJkYXI6Ly84ODk0MDIyOSkuCisKKyAgICAgICAg
VG8gYWRkcmVzcyB0aGUgaXNzdWUsIHdlIG5vdyBzZXQgb3VyIG93biBTSUdURVJNIGhhbmRsZXIg
dGhhdCByZWxlYXNlcyB0aGUgT1MgdHJhbnNhY3Rpb24gYW5kIGNhbGxzIHRoZQorICAgICAgICBk
ZWZhdWx0IFNJR1RFUk0gaGFuZGxlciB0byBleGl0IGNsZWFubHkuIEluIHRoZSBmdXR1cmUsIHdl
IHNob3VsZCBsaWtlbHkgYWRvcHQgUnVubmluZ0JvYXJkIG9uIG1hY09TIGFuZAorICAgICAgICBj
b250cm9sIG91ciBsaWZldGltZSB2aWEgcHJvY2VzcyBhc3NlcnRpb25zIGluc3RlYWQgb2YgbGVh
a2luZyB0aGlzIE9TIHRyYW5zYWN0aW9uLgorCisgICAgICAgICogU2hhcmVkL0VudHJ5UG9pbnRV
dGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5oOgorICAgICAg
ICAoV2ViS2l0OjpYUENTZXJ2aWNlSW5pdGlhbGl6ZXIpOgorICAgICAgICAqIFNoYXJlZC9FbnRy
eVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQubW06
CisgICAgICAgIChXZWJLaXQ6OnNldE9TVHJhbnNhY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpY
UENTZXJ2aWNlRXhpdCk6CisgICAgICAgIChXZWJLaXQ6Om9zVHJhbnNhY3Rpb24pOiBEZWxldGVk
LgorCiAyMDIyLTAzLTAxICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgSWYgdGhlIG1haW4gcmVzb3VyY2Ugd2FzIGxvYWRlZCBvdmVyIHByaXZh
dGUgcmVsYXksIGxvYWQgYWxsIHN1YiByZXNvdXJjZXMgb3ZlciBwcml2YXRlIHJlbGF5CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQ
Q1NlcnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Vu
dHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5o
CmluZGV4IGVjODRiMWE5NDM0OTBmNzE2MDIyMzk0ZTI3YzhlOTFmMGI5NmZhYmUuLmZmYjAxNGQ3
MzFhMzAzNzAxODQ1MWRmNDk2MjY2ZWJjOTQ0MDVhZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNl
RW50cnlQb2ludC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRp
ZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5oCkBAIC04Miw3ICs4Miw3
IEBAIHZvaWQgaW5pdGlhbGl6ZUF1eGlsaWFyeVByb2Nlc3MoQXV4aWxpYXJ5UHJvY2Vzc0luaXRp
YWxpemF0aW9uUGFyYW1ldGVycyYmIHBhcmFtCiB9CiAKICNpZiBQTEFURk9STShNQUMpCi1PU09i
amVjdFB0cjxvc190cmFuc2FjdGlvbl90PiYgb3NUcmFuc2FjdGlvbigpOwordm9pZCBzZXRPU1Ry
YW5zYWN0aW9uKE9TT2JqZWN0UHRyPG9zX3RyYW5zYWN0aW9uX3Q+JiYpOwogI2VuZGlmCiAKIHRl
bXBsYXRlPHR5cGVuYW1lIFhQQ1NlcnZpY2VUeXBlLCB0eXBlbmFtZSBYUENTZXJ2aWNlSW5pdGlh
bGl6ZXJEZWxlZ2F0ZVR5cGU+CkBAIC0xMTMsNyArMTEzLDcgQEAgdm9pZCBYUENTZXJ2aWNlSW5p
dGlhbGl6ZXIoT1NPYmplY3RQdHI8eHBjX2Nvbm5lY3Rpb25fdD4gY29ubmVjdGlvbiwgeHBjX29i
amVjdF8KICAgICAvLyBzbyBlbnN1cmUgdGhhdCB3ZSBoYXZlIGFuIG91dHN0YW5kaW5nIHRyYW5z
YWN0aW9uIGhlcmUuIFRoaXMgaXMgbm90IG5lZWRlZCBvbiBpT1MgYmVjYXVzZQogICAgIC8vIHRo
ZSBVSVByb2Nlc3MgdGFrZXMgcHJvY2VzcyBhc3NlcnRpb25zIG9uIGJlaGFsZiBvZiBpdHMgY2hp
bGQgcHJvY2Vzc2VzLgogI2lmIFBMQVRGT1JNKE1BQykKLSAgICBvc1RyYW5zYWN0aW9uKCkgPSBh
ZG9wdE9TT2JqZWN0KG9zX3RyYW5zYWN0aW9uX2NyZWF0ZSgiV2ViS2l0IFhQQyBTZXJ2aWNlIikp
OworICAgIHNldE9TVHJhbnNhY3Rpb24oYWRvcHRPU09iamVjdChvc190cmFuc2FjdGlvbl9jcmVh
dGUoIldlYktpdCBYUEMgU2VydmljZSIpKSk7CiAjZW5kaWYKIAogICAgIEluaXRpYWxpemVXZWJL
aXQyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0
aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQubW0gYi9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2Vydmlj
ZUVudHJ5UG9pbnQubW0KaW5kZXggOTJlNjIxNjkyMjk4MDJmZGNkMTJmZjQxZTNiNjI1OWRiMmM2
NGYwNC4uZTYyZjZiNmQ1ODRjMmY5ODQzZjY2MzBjZDZlYjliZDVlYzkyZjFiMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2
aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Vu
dHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5t
bQpAQCAtMjksNiArMjksNyBAQAogI2ltcG9ydCAiU2FuZGJveFV0aWxpdGllcy5oIgogI2ltcG9y
dCAiWFBDU2VydmljZUVudHJ5UG9pbnQuaCIKICNpbXBvcnQgPFdlYkNvcmUvUHJvY2Vzc0lkZW50
aWZpZXIuaD4KKyNpbXBvcnQgPHNpZ25hbC5oPgogI2ltcG9ydCA8d3RmL2NvY29hL0VudGl0bGVt
ZW50cy5oPgogI2ltcG9ydCA8d3RmL3NwaS9kYXJ3aW4vU2FuZGJveFNQSS5oPgogI2ltcG9ydCA8
d3RmL3RleHQvU3RyaW5nVG9JbnRlZ2VyQ29udmVyc2lvbi5oPgpAQCAtMTU5LDEwICsxNjAsMjcg
QEAgYm9vbCBYUENTZXJ2aWNlSW5pdGlhbGl6ZXJEZWxlZ2F0ZTo6aXNDbGllbnRTYW5kYm94ZWQo
KQogfQogCiAjaWYgUExBVEZPUk0oTUFDKQotT1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4m
IG9zVHJhbnNhY3Rpb24oKQordm9pZCBzZXRPU1RyYW5zYWN0aW9uKE9TT2JqZWN0UHRyPG9zX3Ry
YW5zYWN0aW9uX3Q+JiYgdHJhbnNhY3Rpb24pCiB7Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVk
PE9TT2JqZWN0UHRyPG9zX3RyYW5zYWN0aW9uX3Q+PiB0cmFuc2FjdGlvbjsKLSAgICByZXR1cm4g
dHJhbnNhY3Rpb24uZ2V0KCk7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPE9TT2JqZWN0UHRy
PG9zX3RyYW5zYWN0aW9uX3Q+PiBnbG9iYWxUcmFuc2FjdGlvbjsKKworICAgIC8vIEJlY2F1c2Ug
d2UgZG9uJ3QgdXNlIFJ1bm5pbmdCb2FyZCBvbiBtYWNPUywgd2UgbGVhayBhbiBPUyB0cmFuc2Fj
dGlvbiB0byBjb250cm9sIHRoZSBsaWZldGltZSBvZiBvdXIgWFBDCisgICAgLy8gc2VydmljZXMg
b3Vyc2VsdmVzLiBIb3dldmVyLCBvbmUgb2YgdGhlIHNpZGUgZWZmZWN0cyBvZiBsZWFraW5nIHRo
aXMgdHJhbnNhY3Rpb24gaXMgdGhhdCB0aGUgZGVmYXVsdCBTSUdURVJNCisgICAgLy8gaGFuZGxl
ciBkb2Vzbid0IGNsZWFubHkgZXhpdCBvdXIgWFBDIHNlcnZpY2VzIHdoZW4gbG9nZ2luZyBvdXQg
b3IgcmVib290aW5nLiBUaGlzIGxlZCB0byBjcmFzaGVzIHdpdGgKKyAgICAvLyBYUENfRVhJVF9S
RUFTT05fU0lHVEVSTV9USU1FT1VUIGFzIHRlcm1pbmF0aW9uIHJlYXNvbiAocmRhcjovLzg4OTQw
MjI5KS4gVG8gYWRkcmVzcyB0aGUgaXNzdWUsIHdlIG5vdyBzZXQgb3VyCisgICAgLy8gb3duIFNJ
R1RFUk0gaGFuZGxlciB0aGF0IHJlbGVhc2VzIHRoZSBPUyB0cmFuc2FjdGlvbiBhbmQgY2FsbHMg
dGhlIGRlZmF1bHQgU0lHVEVSTSBoYW5kbGVyLiBJbiB0aGUgZnV0dXJlLCB3ZQorICAgIC8vIHNo
b3VsZCBsaWtlbHkgYWRvcHQgUnVubmluZ0JvYXJkIG9uIG1hY09TIGFuZCBjb250cm9sIG91ciBs
aWZldGltZSB2aWEgcHJvY2VzcyBhc3NlcnRpb25zIGluc3RlYWQgb2YgbGVha2luZworICAgIC8v
IHRoaXMgT1MgdHJhbnNhY3Rpb24uCisgICAgc3RhdGljIHN0ZDo6b25jZV9mbGFnIG9uY2VLZXk7
CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgW10geworICAgICAgICBzaWduYWwoU0lHVEVS
TSwgW10oaW50KSB7CisgICAgICAgICAgICBnbG9iYWxUcmFuc2FjdGlvbi5nZXQoKSA9IG51bGxw
dHI7CisgICAgICAgICAgICBzaWduYWwoU0lHVEVSTSwgU0lHX0RGTCk7CisgICAgICAgICAgICBy
YWlzZShTSUdURVJNKTsKKyAgICAgICAgfSk7CisgICAgfSk7CisKKyAgICBnbG9iYWxUcmFuc2Fj
dGlvbi5nZXQoKSA9IFdURk1vdmUodHJhbnNhY3Rpb24pOwogfQogI2VuZGlmCiAKQEAgLTE3Miw3
ICsxOTAsNyBAQCB2b2lkIFhQQ1NlcnZpY2VFeGl0KE9TT2JqZWN0UHRyPHhwY19vYmplY3RfdD4m
JiBwcmlvcml0eUJvb3N0TWVzc2FnZSkKICAgICBwcmlvcml0eUJvb3N0TWVzc2FnZSA9IG51bGxw
dHI7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgb3NUcmFuc2FjdGlvbigpID0gbnVsbHB0cjsK
KyAgICBzZXRPU1RyYW5zYWN0aW9uKG51bGxwdHIpOwogI2VuZGlmCiAKICAgICB4cGNfdHJhbnNh
Y3Rpb25fZXhpdF9jbGVhbigpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454364</attachid>
            <date>2022-03-10 08:08:07 -0800</date>
            <delta_ts>2022-03-10 14:47:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237398-20220310080807.patch</filename>
            <type>text/plain</type>
            <size>5189</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMTEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQ5ZDgwMzFkNjNlOTRmZjlk
OGY0NjYyODVjMjcyYzE4MzA5NDIzMWUuLmQ5NjZjNTZhNzNkZTBkZjBkOTY0MWNkMGJlZWQyZDRk
NTU1MGMxY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjItMDMtMTAgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbbWFjT1NdIFdlYkNvbnRlbnQgcHJv
Y2Vzc2VzIGNyYXNoIHdpdGggWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElNRU9VVCB3aGVuIGxv
Z2dpbmcgb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzczOTgKKyAgICAgICAgPHJkYXI6Ly84ODk0MDIyOT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCZWNhdXNlIHdlIGRvbid0IHVzZSBSdW5uaW5n
Qm9hcmQgb24gbWFjT1MsIHdlIGxlYWsgYW4gT1MgdHJhbnNhY3Rpb24gdG8gY29udHJvbCB0aGUg
bGlmZXRpbWUgb2Ygb3VyIFhQQworICAgICAgICBzZXJ2aWNlcyBvdXJzZWx2ZXMuIEhvd2V2ZXIs
IG9uZSBvZiB0aGUgc2lkZSBlZmZlY3RzIG9mIGxlYWtpbmcgdGhpcyB0cmFuc2FjdGlvbiBpcyB0
aGF0IHRoZSBkZWZhdWx0IFNJR1RFUk0KKyAgICAgICAgaGFuZGxlciBkb2Vzbid0IGNsZWFubHkg
ZXhpdCBvdXIgWFBDIHNlcnZpY2VzIHdoZW4gbG9nZ2luZyBvdXQgb3IgcmVib290aW5nLiBUaGlz
IGxlZCB0byBjcmFzaGVzIHdpdGgKKyAgICAgICAgWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElN
RU9VVCBhcyB0ZXJtaW5hdGlvbiByZWFzb24gKHJkYXI6Ly84ODk0MDIyOSkuCisKKyAgICAgICAg
VG8gYWRkcmVzcyB0aGUgaXNzdWUsIHdlIG5vdyBzZXQgb3VyIG93biBTSUdURVJNIGhhbmRsZXIg
dGhhdCByZWxlYXNlcyB0aGUgT1MgdHJhbnNhY3Rpb24gYW5kIGNhbGxzIF9leGl0KDApCisgICAg
ICAgIHRvIGV4aXQgY2xlYW5seS4gSW4gdGhlIGZ1dHVyZSwgd2Ugc2hvdWxkIGxpa2VseSBhZG9w
dCBSdW5uaW5nQm9hcmQgb24gbWFjT1MgYW5kIGNvbnRyb2wgb3VyIGxpZmV0aW1lIHZpYQorICAg
ICAgICBwcm9jZXNzIGFzc2VydGlvbnMgaW5zdGVhZCBvZiBsZWFraW5nIHRoaXMgT1MgdHJhbnNh
Y3Rpb24uCisKKyAgICAgICAgKiBTaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENT
ZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lmg6CisgICAgICAgIChXZWJLaXQ6OlhQQ1NlcnZp
Y2VJbml0aWFsaXplcik6CisgICAgICAgICogU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29j
b2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5tbToKKyAgICAgICAgKFdlYktpdDo6
c2V0T1NUcmFuc2FjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OlhQQ1NlcnZpY2VFeGl0KToKKyAg
ICAgICAgKFdlYktpdDo6b3NUcmFuc2FjdGlvbik6IERlbGV0ZWQuCisKIDIwMjItMDMtMTAgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZl
cnRpbmcgcjI5MDc5NS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9p
bnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5oIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQ
Q1NlcnZpY2VFbnRyeVBvaW50LmgKaW5kZXggZWM4NGIxYTk0MzQ5MGY3MTYwMjIzOTRlMjdjOGU5
MWYwYjk2ZmFiZS4uZmZiMDE0ZDczMWEzMDM3MDE4NDUxZGY0OTYyNjZlYmM5NDQwNWFlMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9Y
UENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50LmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBv
aW50LmgKQEAgLTgyLDcgKzgyLDcgQEAgdm9pZCBpbml0aWFsaXplQXV4aWxpYXJ5UHJvY2VzcyhB
dXhpbGlhcnlQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiYgcGFyYW0KIH0KIAogI2lm
IFBMQVRGT1JNKE1BQykKLU9TT2JqZWN0UHRyPG9zX3RyYW5zYWN0aW9uX3Q+JiBvc1RyYW5zYWN0
aW9uKCk7Cit2b2lkIHNldE9TVHJhbnNhY3Rpb24oT1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25f
dD4mJik7CiAjZW5kaWYKIAogdGVtcGxhdGU8dHlwZW5hbWUgWFBDU2VydmljZVR5cGUsIHR5cGVu
YW1lIFhQQ1NlcnZpY2VJbml0aWFsaXplckRlbGVnYXRlVHlwZT4KQEAgLTExMyw3ICsxMTMsNyBA
QCB2b2lkIFhQQ1NlcnZpY2VJbml0aWFsaXplcihPU09iamVjdFB0cjx4cGNfY29ubmVjdGlvbl90
PiBjb25uZWN0aW9uLCB4cGNfb2JqZWN0XwogICAgIC8vIHNvIGVuc3VyZSB0aGF0IHdlIGhhdmUg
YW4gb3V0c3RhbmRpbmcgdHJhbnNhY3Rpb24gaGVyZS4gVGhpcyBpcyBub3QgbmVlZGVkIG9uIGlP
UyBiZWNhdXNlCiAgICAgLy8gdGhlIFVJUHJvY2VzcyB0YWtlcyBwcm9jZXNzIGFzc2VydGlvbnMg
b24gYmVoYWxmIG9mIGl0cyBjaGlsZCBwcm9jZXNzZXMuCiAjaWYgUExBVEZPUk0oTUFDKQotICAg
IG9zVHJhbnNhY3Rpb24oKSA9IGFkb3B0T1NPYmplY3Qob3NfdHJhbnNhY3Rpb25fY3JlYXRlKCJX
ZWJLaXQgWFBDIFNlcnZpY2UiKSk7CisgICAgc2V0T1NUcmFuc2FjdGlvbihhZG9wdE9TT2JqZWN0
KG9zX3RyYW5zYWN0aW9uX2NyZWF0ZSgiV2ViS2l0IFhQQyBTZXJ2aWNlIikpKTsKICNlbmRpZgog
CiAgICAgSW5pdGlhbGl6ZVdlYktpdDIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQ
b2ludC5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2Ev
WFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5tbQppbmRleCA5MmU2MjE2OTIyOTgwMmZk
Y2QxMmZmNDFlM2I2MjU5ZGIyYzY0ZjA0Li5hM2RiNGFmNGMxMjNiNmU2YTkxZWExZWNkYzEzZGI4
MmExYmM4YjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRp
bGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2VydmljZUVudHJ5UG9pbnQubW0KKysrIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQ
Q1NlcnZpY2VFbnRyeVBvaW50Lm1tCkBAIC0yOSw2ICsyOSw3IEBACiAjaW1wb3J0ICJTYW5kYm94
VXRpbGl0aWVzLmgiCiAjaW1wb3J0ICJYUENTZXJ2aWNlRW50cnlQb2ludC5oIgogI2ltcG9ydCA8
V2ViQ29yZS9Qcm9jZXNzSWRlbnRpZmllci5oPgorI2ltcG9ydCA8c2lnbmFsLmg+CiAjaW1wb3J0
IDx3dGYvY29jb2EvRW50aXRsZW1lbnRzLmg+CiAjaW1wb3J0IDx3dGYvc3BpL2Rhcndpbi9TYW5k
Ym94U1BJLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdUb0ludGVnZXJDb252ZXJzaW9uLmg+
CkBAIC0xNTksMTAgKzE2MCwyNCBAQCBib29sIFhQQ1NlcnZpY2VJbml0aWFsaXplckRlbGVnYXRl
Ojppc0NsaWVudFNhbmRib3hlZCgpCiB9CiAKICNpZiBQTEFURk9STShNQUMpCi1PU09iamVjdFB0
cjxvc190cmFuc2FjdGlvbl90PiYgb3NUcmFuc2FjdGlvbigpCit2b2lkIHNldE9TVHJhbnNhY3Rp
b24oT1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4mJiB0cmFuc2FjdGlvbikKIHsKLSAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8T1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4+IHRyYW5z
YWN0aW9uOwotICAgIHJldHVybiB0cmFuc2FjdGlvbi5nZXQoKTsKKyAgICBzdGF0aWMgTmV2ZXJE
ZXN0cm95ZWQ8T1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4+IGdsb2JhbFRyYW5zYWN0aW9u
OworCisgICAgLy8gQmVjYXVzZSB3ZSBkb24ndCB1c2UgUnVubmluZ0JvYXJkIG9uIG1hY09TLCB3
ZSBsZWFrIGFuIE9TIHRyYW5zYWN0aW9uIHRvIGNvbnRyb2wgdGhlIGxpZmV0aW1lIG9mIG91ciBY
UEMKKyAgICAvLyBzZXJ2aWNlcyBvdXJzZWx2ZXMuIEhvd2V2ZXIsIG9uZSBvZiB0aGUgc2lkZSBl
ZmZlY3RzIG9mIGxlYWtpbmcgdGhpcyB0cmFuc2FjdGlvbiBpcyB0aGF0IHRoZSBkZWZhdWx0IFNJ
R1RFUk0KKyAgICAvLyBoYW5kbGVyIGRvZXNuJ3QgY2xlYW5seSBleGl0IG91ciBYUEMgc2Vydmlj
ZXMgd2hlbiBsb2dnaW5nIG91dCBvciByZWJvb3RpbmcuIFRoaXMgbGVkIHRvIGNyYXNoZXMgd2l0
aAorICAgIC8vIFhQQ19FWElUX1JFQVNPTl9TSUdURVJNX1RJTUVPVVQgYXMgdGVybWluYXRpb24g
cmVhc29uIChyZGFyOi8vODg5NDAyMjkpLiBUbyBhZGRyZXNzIHRoZSBpc3N1ZSwgd2Ugbm93IHNl
dCBvdXIKKyAgICAvLyBvd24gU0lHVEVSTSBoYW5kbGVyIHRoYXQgY2FsbHMgX2V4aXQoMCkuIElu
IHRoZSBmdXR1cmUsIHdlIHNob3VsZCBsaWtlbHkgYWRvcHQgUnVubmluZ0JvYXJkIG9uIG1hY09T
IGFuZAorICAgIC8vIGNvbnRyb2wgb3VyIGxpZmV0aW1lIHZpYSBwcm9jZXNzIGFzc2VydGlvbnMg
aW5zdGVhZCBvZiBsZWFraW5nIHRoaXMgT1MgdHJhbnNhY3Rpb24uCisgICAgc3RhdGljIHN0ZDo6
b25jZV9mbGFnIG9uY2VLZXk7CisgICAgc3RkOjpjYWxsX29uY2Uob25jZUtleSwgW10geworICAg
ICAgICBzaWduYWwoU0lHVEVSTSwgW10oaW50KSB7CisgICAgICAgICAgICBfZXhpdCgwKTsKKyAg
ICAgICAgfSk7CisgICAgfSk7CisKKyAgICBnbG9iYWxUcmFuc2FjdGlvbi5nZXQoKSA9IFdURk1v
dmUodHJhbnNhY3Rpb24pOwogfQogI2VuZGlmCiAKQEAgLTE3Miw3ICsxODcsNyBAQCB2b2lkIFhQ
Q1NlcnZpY2VFeGl0KE9TT2JqZWN0UHRyPHhwY19vYmplY3RfdD4mJiBwcmlvcml0eUJvb3N0TWVz
c2FnZSkKICAgICBwcmlvcml0eUJvb3N0TWVzc2FnZSA9IG51bGxwdHI7CiAKICNpZiBQTEFURk9S
TShNQUMpCi0gICAgb3NUcmFuc2FjdGlvbigpID0gbnVsbHB0cjsKKyAgICBzZXRPU1RyYW5zYWN0
aW9uKG51bGxwdHIpOwogI2VuZGlmCiAKICAgICB4cGNfdHJhbnNhY3Rpb25fZXhpdF9jbGVhbigp
Owo=
</data>
<flag name="review"
          id="481985"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454403</attachid>
            <date>2022-03-10 14:47:42 -0800</date>
            <delta_ts>2022-03-10 16:29:18 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>237398.patch</filename>
            <type>text/plain</type>
            <size>5162</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMTEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQ5ZDgwMzFkNjNlOTRmZjlk
OGY0NjYyODVjMjcyYzE4MzA5NDIzMWUuLmQ5NjZjNTZhNzNkZTBkZjBkOTY0MWNkMGJlZWQyZDRk
NTU1MGMxY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjItMDMtMTAgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBbbWFjT1NdIFdlYkNvbnRlbnQgcHJv
Y2Vzc2VzIGNyYXNoIHdpdGggWFBDX0VYSVRfUkVBU09OX1NJR1RFUk1fVElNRU9VVCB3aGVuIGxv
Z2dpbmcgb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzczOTgKKyAgICAgICAgPHJkYXI6Ly84ODk0MDIyOT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBBbGV4ZXkgUHJvc2t1cnlha292LgorCisgICAgICAgIEJlY2F1c2Ugd2UgZG9uJ3QgdXNlIFJ1
bm5pbmdCb2FyZCBvbiBtYWNPUywgd2UgbGVhayBhbiBPUyB0cmFuc2FjdGlvbiB0byBjb250cm9s
IHRoZSBsaWZldGltZSBvZiBvdXIgWFBDCisgICAgICAgIHNlcnZpY2VzIG91cnNlbHZlcy4gSG93
ZXZlciwgb25lIG9mIHRoZSBzaWRlIGVmZmVjdHMgb2YgbGVha2luZyB0aGlzIHRyYW5zYWN0aW9u
IGlzIHRoYXQgdGhlIGRlZmF1bHQgU0lHVEVSTQorICAgICAgICBoYW5kbGVyIGRvZXNuJ3QgY2xl
YW5seSBleGl0IG91ciBYUEMgc2VydmljZXMgd2hlbiBsb2dnaW5nIG91dCBvciByZWJvb3Rpbmcu
IFRoaXMgbGVkIHRvIGNyYXNoZXMgd2l0aAorICAgICAgICBYUENfRVhJVF9SRUFTT05fU0lHVEVS
TV9USU1FT1VUIGFzIHRlcm1pbmF0aW9uIHJlYXNvbiAocmRhcjovLzg4OTQwMjI5KS4KKworICAg
ICAgICBUbyBhZGRyZXNzIHRoZSBpc3N1ZSwgd2Ugbm93IHNldCBvdXIgb3duIFNJR1RFUk0gaGFu
ZGxlciB0aGF0IGNhbGxzIF9leGl0KDApIHRvIGV4aXQgY2xlYW5seS4gSW4gdGhlIGZ1dHVyZSwK
KyAgICAgICAgd2Ugc2hvdWxkIGxpa2VseSBhZG9wdCBSdW5uaW5nQm9hcmQgb24gbWFjT1MgYW5k
IGNvbnRyb2wgb3VyIGxpZmV0aW1lIHZpYSBwcm9jZXNzIGFzc2VydGlvbnMgaW5zdGVhZCBvZgor
ICAgICAgICBsZWFraW5nIHRoaXMgT1MgdHJhbnNhY3Rpb24uCisKKyAgICAgICAgKiBTaGFyZWQv
RW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50
Lmg6CisgICAgICAgIChXZWJLaXQ6OlhQQ1NlcnZpY2VJbml0aWFsaXplcik6CisgICAgICAgICog
U2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50
cnlQb2ludC5tbToKKyAgICAgICAgKFdlYktpdDo6c2V0T1NUcmFuc2FjdGlvbik6CisgICAgICAg
IChXZWJLaXQ6OlhQQ1NlcnZpY2VFeGl0KToKKyAgICAgICAgKFdlYktpdDo6b3NUcmFuc2FjdGlv
bik6IERlbGV0ZWQuCisKIDIwMjItMDMtMTAgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnRpbmcgcjI5MDc5NS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2Vydmlj
ZS9YUENTZXJ2aWNlRW50cnlQb2ludC5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2lu
dFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50LmgKaW5kZXgg
ZWM4NGIxYTk0MzQ5MGY3MTYwMjIzOTRlMjdjOGU5MWYwYjk2ZmFiZS4uZmZiMDE0ZDczMWEzMDM3
MDE4NDUxZGY0OTYyNjZlYmM5NDQwNWFlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBv
aW50LmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2Nv
YS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50LmgKQEAgLTgyLDcgKzgyLDcgQEAgdm9p
ZCBpbml0aWFsaXplQXV4aWxpYXJ5UHJvY2VzcyhBdXhpbGlhcnlQcm9jZXNzSW5pdGlhbGl6YXRp
b25QYXJhbWV0ZXJzJiYgcGFyYW0KIH0KIAogI2lmIFBMQVRGT1JNKE1BQykKLU9TT2JqZWN0UHRy
PG9zX3RyYW5zYWN0aW9uX3Q+JiBvc1RyYW5zYWN0aW9uKCk7Cit2b2lkIHNldE9TVHJhbnNhY3Rp
b24oT1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4mJik7CiAjZW5kaWYKIAogdGVtcGxhdGU8
dHlwZW5hbWUgWFBDU2VydmljZVR5cGUsIHR5cGVuYW1lIFhQQ1NlcnZpY2VJbml0aWFsaXplckRl
bGVnYXRlVHlwZT4KQEAgLTExMyw3ICsxMTMsNyBAQCB2b2lkIFhQQ1NlcnZpY2VJbml0aWFsaXpl
cihPU09iamVjdFB0cjx4cGNfY29ubmVjdGlvbl90PiBjb25uZWN0aW9uLCB4cGNfb2JqZWN0Xwog
ICAgIC8vIHNvIGVuc3VyZSB0aGF0IHdlIGhhdmUgYW4gb3V0c3RhbmRpbmcgdHJhbnNhY3Rpb24g
aGVyZS4gVGhpcyBpcyBub3QgbmVlZGVkIG9uIGlPUyBiZWNhdXNlCiAgICAgLy8gdGhlIFVJUHJv
Y2VzcyB0YWtlcyBwcm9jZXNzIGFzc2VydGlvbnMgb24gYmVoYWxmIG9mIGl0cyBjaGlsZCBwcm9j
ZXNzZXMuCiAjaWYgUExBVEZPUk0oTUFDKQotICAgIG9zVHJhbnNhY3Rpb24oKSA9IGFkb3B0T1NP
YmplY3Qob3NfdHJhbnNhY3Rpb25fY3JlYXRlKCJXZWJLaXQgWFBDIFNlcnZpY2UiKSk7CisgICAg
c2V0T1NUcmFuc2FjdGlvbihhZG9wdE9TT2JqZWN0KG9zX3RyYW5zYWN0aW9uX2NyZWF0ZSgiV2Vi
S2l0IFhQQyBTZXJ2aWNlIikpKTsKICNlbmRpZgogCiAgICAgSW5pdGlhbGl6ZVdlYktpdDIoKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29j
b2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQb2ludC5tbSBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvQ29jb2EvWFBDU2VydmljZS9YUENTZXJ2aWNlRW50cnlQ
b2ludC5tbQppbmRleCA5MmU2MjE2OTIyOTgwMmZkY2QxMmZmNDFlM2I2MjU5ZGIyYzY0ZjA0Li5h
M2RiNGFmNGMxMjNiNmU2YTkxZWExZWNkYzEzZGI4MmExYmM4YjI0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBD
U2VydmljZUVudHJ5UG9pbnQubW0KKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvRW50cnlQb2lu
dFV0aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lm1tCkBAIC0y
OSw2ICsyOSw3IEBACiAjaW1wb3J0ICJTYW5kYm94VXRpbGl0aWVzLmgiCiAjaW1wb3J0ICJYUENT
ZXJ2aWNlRW50cnlQb2ludC5oIgogI2ltcG9ydCA8V2ViQ29yZS9Qcm9jZXNzSWRlbnRpZmllci5o
PgorI2ltcG9ydCA8c2lnbmFsLmg+CiAjaW1wb3J0IDx3dGYvY29jb2EvRW50aXRsZW1lbnRzLmg+
CiAjaW1wb3J0IDx3dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmg+CiAjaW1wb3J0IDx3dGYvdGV4
dC9TdHJpbmdUb0ludGVnZXJDb252ZXJzaW9uLmg+CkBAIC0xNTksMTAgKzE2MCwyNCBAQCBib29s
IFhQQ1NlcnZpY2VJbml0aWFsaXplckRlbGVnYXRlOjppc0NsaWVudFNhbmRib3hlZCgpCiB9CiAK
ICNpZiBQTEFURk9STShNQUMpCi1PU09iamVjdFB0cjxvc190cmFuc2FjdGlvbl90PiYgb3NUcmFu
c2FjdGlvbigpCit2b2lkIHNldE9TVHJhbnNhY3Rpb24oT1NPYmplY3RQdHI8b3NfdHJhbnNhY3Rp
b25fdD4mJiB0cmFuc2FjdGlvbikKIHsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8T1NPYmpl
Y3RQdHI8b3NfdHJhbnNhY3Rpb25fdD4+IHRyYW5zYWN0aW9uOwotICAgIHJldHVybiB0cmFuc2Fj
dGlvbi5nZXQoKTsKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8T1NPYmplY3RQdHI8b3NfdHJh
bnNhY3Rpb25fdD4+IGdsb2JhbFRyYW5zYWN0aW9uOworCisgICAgLy8gQmVjYXVzZSB3ZSBkb24n
dCB1c2UgUnVubmluZ0JvYXJkIG9uIG1hY09TLCB3ZSBsZWFrIGFuIE9TIHRyYW5zYWN0aW9uIHRv
IGNvbnRyb2wgdGhlIGxpZmV0aW1lIG9mIG91ciBYUEMKKyAgICAvLyBzZXJ2aWNlcyBvdXJzZWx2
ZXMuIEhvd2V2ZXIsIG9uZSBvZiB0aGUgc2lkZSBlZmZlY3RzIG9mIGxlYWtpbmcgdGhpcyB0cmFu
c2FjdGlvbiBpcyB0aGF0IHRoZSBkZWZhdWx0IFNJR1RFUk0KKyAgICAvLyBoYW5kbGVyIGRvZXNu
J3QgY2xlYW5seSBleGl0IG91ciBYUEMgc2VydmljZXMgd2hlbiBsb2dnaW5nIG91dCBvciByZWJv
b3RpbmcuIFRoaXMgbGVkIHRvIGNyYXNoZXMgd2l0aAorICAgIC8vIFhQQ19FWElUX1JFQVNPTl9T
SUdURVJNX1RJTUVPVVQgYXMgdGVybWluYXRpb24gcmVhc29uIChyZGFyOi8vODg5NDAyMjkpLiBU
byBhZGRyZXNzIHRoZSBpc3N1ZSwgd2Ugbm93IHNldCBvdXIKKyAgICAvLyBvd24gU0lHVEVSTSBo
YW5kbGVyIHRoYXQgY2FsbHMgX2V4aXQoMCkuIEluIHRoZSBmdXR1cmUsIHdlIHNob3VsZCBsaWtl
bHkgYWRvcHQgUnVubmluZ0JvYXJkIG9uIG1hY09TIGFuZAorICAgIC8vIGNvbnRyb2wgb3VyIGxp
ZmV0aW1lIHZpYSBwcm9jZXNzIGFzc2VydGlvbnMgaW5zdGVhZCBvZiBsZWFraW5nIHRoaXMgT1Mg
dHJhbnNhY3Rpb24uCisgICAgc3RhdGljIHN0ZDo6b25jZV9mbGFnIG9uY2VLZXk7CisgICAgc3Rk
OjpjYWxsX29uY2Uob25jZUtleSwgW10geworICAgICAgICBzaWduYWwoU0lHVEVSTSwgW10oaW50
KSB7CisgICAgICAgICAgICBfZXhpdCgwKTsKKyAgICAgICAgfSk7CisgICAgfSk7CisKKyAgICBn
bG9iYWxUcmFuc2FjdGlvbi5nZXQoKSA9IFdURk1vdmUodHJhbnNhY3Rpb24pOwogfQogI2VuZGlm
CiAKQEAgLTE3Miw3ICsxODcsNyBAQCB2b2lkIFhQQ1NlcnZpY2VFeGl0KE9TT2JqZWN0UHRyPHhw
Y19vYmplY3RfdD4mJiBwcmlvcml0eUJvb3N0TWVzc2FnZSkKICAgICBwcmlvcml0eUJvb3N0TWVz
c2FnZSA9IG51bGxwdHI7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgb3NUcmFuc2FjdGlvbigp
ID0gbnVsbHB0cjsKKyAgICBzZXRPU1RyYW5zYWN0aW9uKG51bGxwdHIpOwogI2VuZGlmCiAKICAg
ICB4cGNfdHJhbnNhY3Rpb25fZXhpdF9jbGVhbigpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>