<?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>225189</bug_id>
          
          <creation_ts>2021-04-29 06:11:30 -0700</creation_ts>
          <short_desc>Stopping LayoutTest WebSocket Server turns it into a zombie</short_desc>
          <delta_ts>2021-10-30 10:10:00 -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>Tools / Tests</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="Sam Sneddon [:gsnedders]">gsnedders</reporter>
          <assigned_to name="Sam Sneddon [:gsnedders]">gsnedders</assigned_to>
          <cc>ap</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1755359</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-04-29 06:11:30 -0700</bug_when>
    <thetext>Stopping the WebSocket server on Linux always hits the timeout:

&gt; __GI___select (/usr/lib/libc-2.33.so:0)
&gt; _wait_for_action (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/servers/http_server_base.py:203)
&gt; _stop_running_server (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/servers/http_server.py:213)
&gt; _stop_running_server (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/servers/websocket_server.py:174)
&gt; stop (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/servers/http_server_base.py:140)
&gt; stop_websocket_server (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/port/base.py:978)
&gt; stop_servers (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:229)
&gt; run (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py:442)
&gt; run (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py:488)
&gt; main (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py:93)
&gt; &lt;module&gt; (/mnt/home-extra/gsnedders/Documents/other-projects/WebKit/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py:495)

_wait_for_action sleep-loops until its action returns True; it is called with Lighttpd._check_and_kill as the action from its caller. This action essentially checks Executive.check_running_pid (which calls kill(pid, 0)) and then calls Executive.kill_process if that&apos;s True.

However, despite the long delay, it appears that the first Executive.kill_process is killing it, turning it into a zombie. It appears that on Darwin, kill(pid, 0) returns non-zero when pid is a zombie, but on GNU/Linux the same returns 0 when pid is a zombie.

We should really be calling os.wait (or, better, keeping the subprocess.Popen object around to call Popen.wait) while waiting for it to stop. This is somewhat painful on Py&lt;3.3, given os.wait itself just busyloops until it succeeds, whereas we really want to have some timeout there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1757374</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-06 06:12:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/77604119&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810103</commentid>
    <comment_count>2</comment_count>
      <attachid>442825</attachid>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-10-29 09:43:19 -0700</bug_when>
    <thetext>Created attachment 442825
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810113</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-10-29 10:00:21 -0700</bug_when>
    <thetext>EWS failures (both Py2 and Py3) for webkitpy are:

[660/2054] webkitpy.layout_tests.servers.http_server_unittest.TestHttpServer.test_win32_start_and_stop erred:
  Traceback (most recent call last):
    File &quot;/Volumes/Data/worker/WebKitPy-Tests-EWS/build/Tools/Scripts/webkitpy/layout_tests/servers/http_server_unittest.py&quot;, line 107, in test_win32_start_and_stop
      self.assertEqual([&apos;taskkill.exe&apos;, &apos;/f&apos;, &apos;/t&apos;, &apos;/pid&apos;, 42], host.executive.calls[1])
  IndexError: list index out of range</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810151</commentid>
    <comment_count>4</comment_count>
      <attachid>442842</attachid>
    <who name="Sam Sneddon [:gsnedders]">gsnedders</who>
    <bug_when>2021-10-29 10:34:34 -0700</bug_when>
    <thetext>Created attachment 442842
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1810425</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-30 10:09:59 -0700</bug_when>
    <thetext>Committed r285081 (243723@main): &lt;https://commits.webkit.org/243723@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 442842.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442825</attachid>
            <date>2021-10-29 09:43:19 -0700</date>
            <delta_ts>2021-10-29 10:34:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225189-20211029174318.patch</filename>
            <type>text/plain</type>
            <size>5675</size>
            <attacher name="Sam Sneddon [:gsnedders]">gsnedders</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0NTk2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWMxZmFhNjhlMjcyMWViOTk3YzVkODI1YWRlMjVlM2M2
MjA0YzZiNy4uYjljZDMyZjNiM2VkYjY2M2U4MDUwYzVkZmUxOTIzOWI3ZDUxYjhhNSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDIxLTEwLTI5ICBTYW0gU25lZGRvbiAgPGdzbmVkZGVyc0BhcHBsZS5jb20+CisKKyAg
ICAgICAgRW5zdXJlIHdlIHN0b3AgTGF5b3V0VGVzdCBzZXJ2ZXJzIHdpdGhvdXQgdGhlbSBiZWNv
bWluZyB6b21iaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjUxODkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc3NjA0MTE5PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFsc28gaW5jcmVhc2UgdGhl
IHBvbGxpbmcgZnJlcXVlbmN5IGluIEh0dHBTZXJ2ZXJCYXNlLl93YWl0X2Zvcl9hY3Rpb24sIGFz
IHRoaXMgaXMgYSBtYWpvcgorICAgICAgICBzb3VyY2Ugb2YgZGVsYXkgd2hlbiBydW5uaW5nIHJ1
bi13ZWJraXQtdGVzdHMgLS1kcnktcnVuIGR1ZSB0byB0aGUgbnVtYmVyIG9mIHNlcnZlcnMgd2Un
cmUKKyAgICAgICAgc3RhcnRpbmcgbm93YWRheXMuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5OgorICAgICAgICAoTGlnaHR0
cGQuX3NwYXduX3Byb2Nlc3MpOiBTdG9yZSBQb3BlbiBvYmplY3QKKyAgICAgICAgKExpZ2h0dHBk
Ll9jaGVja19hbmRfa2lsbCk6IFNraXAgImtpbGwiIGlmIHByb2Nlc3MgaGFzIHJldHVybmVkCisg
ICAgICAgIChMaWdodHRwZC5faXNfc2VydmVyX3J1bm5pbmdfb25fYWxsX3BvcnRzKTogQ29ycmVj
dGx5IHJhaXNlIFNlcnZlckVycm9yIGlmIGl0IGhhcyByZXR1cm5lZAorICAgICAgICAqIFNjcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXJfYmFzZS5weToKKyAg
ICAgICAgKEh0dHBTZXJ2ZXJCYXNlLnN0YXJ0KTogQ2hhbmdlIHBvbGxpbmcgZnJlcXVlbmN5IGZv
ciBjeWd3aW4gZnJvbSAwLjFIeiB0byBkZWZhdWx0CisgICAgICAgIChIdHRwU2VydmVyQmFzZS5f
d2FpdF9mb3JfYWN0aW9uKTogSW5jcmVhc2UgZGVmYXVsdCBwb2xsaW5nIGZyZXF1ZW5jeSB0byAx
MEh6IGZyb20gMUh6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2Vy
dmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2ZXIucHk6CisgICAgICAgIChXZWJQbGF0Zm9ybVRl
c3RTZXJ2ZXIuX3N0b3BfcnVubmluZ19zZXJ2ZXIpOiBQb2xsIGZpcnN0IHNvIHdlIGRvbid0IGhh
dmUgem9tYmllcyBrZWVwaW5nIHJlZmVyZW5jZXMgdG8gcGlwZXMKKwogMjAyMS0xMC0yMSAgU2Ft
IFNuZWRkb24gIDxnc25lZGRlcnNAYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgbGF5b3V0X3Rl
c3RfZmluZGVyIHRvIGxheW91dF90ZXN0X2ZpbmRlcl9sZWdhY3kKZGlmZiAtLWdpdCBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyLnB5
CmluZGV4IDk0YjY2YmIzOTM5YTFhM2I4MjU1N2JlYzg4MTljNjY3NjFkNjY2NWMuLjc2ZTI3MTk2
MjQ4MjVkM2ZkYWE2ZDcyYWMwNzNiZWJmZmQ4OGE5NTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHkKKysrIGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlci5weQpA
QCAtMTk5LDggKzE5OSw4IEBAIGNsYXNzIExpZ2h0dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNl
cnZlckJhc2UpOgogCiAgICAgZGVmIF9zcGF3bl9wcm9jZXNzKHNlbGYpOgogICAgICAgICBfbG9n
LmRlYnVnKCdTdGFydGluZyAlcyBzZXJ2ZXIsIGNtZD0iJXMiJyAlIChzZWxmLl9uYW1lLCBzZWxm
Ll9zdGFydF9jbWQpKQotICAgICAgICBwcm9jZXNzID0gc2VsZi5fZXhlY3V0aXZlLnBvcGVuKHNl
bGYuX3N0YXJ0X2NtZCwgZW52PXNlbGYuX2Vudiwgc2hlbGw9RmFsc2UsIHN0ZGVycj1zZWxmLl9l
eGVjdXRpdmUuUElQRSkKLSAgICAgICAgcGlkID0gcHJvY2Vzcy5waWQKKyAgICAgICAgc2VsZi5f
cHJvY2VzcyA9IHNlbGYuX2V4ZWN1dGl2ZS5wb3BlbihzZWxmLl9zdGFydF9jbWQsIGVudj1zZWxm
Ll9lbnYsIHNoZWxsPUZhbHNlLCBzdGRlcnI9c2VsZi5fZXhlY3V0aXZlLlBJUEUpCisgICAgICAg
IHBpZCA9IHNlbGYuX3Byb2Nlc3MucGlkCiAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ud3JpdGVf
dGV4dF9maWxlKHNlbGYuX3BpZF9maWxlLCBzdHIocGlkKSkKICAgICAgICAgcmV0dXJuIHBpZAog
CkBAIC0yMTUsNiArMjE1LDExIEBAIGNsYXNzIExpZ2h0dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0
cFNlcnZlckJhc2UpOgogICAgICAgICAgICAgc2VsZi5fZmlsZXN5c3RlbS5yZW1vdmUoc2VsZi5f
cGlkX2ZpbGUpCiAKICAgICBkZWYgX2NoZWNrX2FuZF9raWxsKHNlbGYpOgorICAgICAgICBpZiBz
ZWxmLl9wcm9jZXNzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5fcHJvY2Vzcy5wb2xs
KCkKKyAgICAgICAgICAgIGlmIHNlbGYuX3Byb2Nlc3MucmV0dXJuY29kZSBpcyBub3QgTm9uZToK
KyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCiAgICAgICAgIGlmIHNlbGYuX2V4ZWN1dGl2
ZS5jaGVja19ydW5uaW5nX3BpZChzZWxmLl9waWQpOgogICAgICAgICAgICAgaG9zdCA9IHNlbGYu
X3BvcnRfb2JqLmhvc3QKICAgICAgICAgICAgIGlmIGhvc3QucGxhdGZvcm0uaXNfd2luKCkgYW5k
IG5vdCBob3N0LnBsYXRmb3JtLmlzX2N5Z3dpbigpOgpAQCAtMjI4LDMgKzIzMywxMiBAQCBjbGFz
cyBMaWdodHRwZChodHRwX3NlcnZlcl9iYXNlLkh0dHBTZXJ2ZXJCYXNlKToKICAgICAgICAgICAg
ICAgICBzZWxmLl9leGVjdXRpdmUua2lsbF9wcm9jZXNzKHNlbGYuX3BpZCkKICAgICAgICAgICAg
IHJldHVybiBGYWxzZQogICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgZGVmIF9pc19zZXJ2ZXJf
cnVubmluZ19vbl9hbGxfcG9ydHMoc2VsZik6CisgICAgICAgIGlmIHNlbGYuX3Byb2Nlc3MgaXMg
bm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLl9wcm9jZXNzLnBvbGwoKQorICAgICAgICAgICAg
aWYgc2VsZi5fcHJvY2Vzcy5yZXR1cm5jb2RlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAg
IF9sb2cuZGVidWcoIlNlcnZlciBpc24ndCBydW5uaW5nIGF0IGFsbCIpCisgICAgICAgICAgICAg
ICAgcmFpc2UgaHR0cF9zZXJ2ZXJfYmFzZS5TZXJ2ZXJFcnJvcigiU2VydmVyIGV4aXRlZCIpCisK
KyAgICAgICAgcmV0dXJuIHN1cGVyKExpZ2h0dHBkLCBzZWxmKS5faXNfc2VydmVyX3J1bm5pbmdf
b25fYWxsX3BvcnRzKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXJfYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXJfYmFzZS5weQppbmRleCAzODgwMWRj
MjM4MDM5YjA2OGUxNTEzM2IzMGZhYTM3OWE4ZDMwYTJmLi5iODhkN2JlYzEyNjFmYjE4YzVlMzI0
Nzc0MjJiOTllYzdkZDFmNDM1IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyX2Jhc2UucHkKKysrIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlcl9iYXNlLnB5CkBAIC05
OSw3ICs5OSw3IEBAIGNsYXNzIEh0dHBTZXJ2ZXJCYXNlKG9iamVjdCk6CiAKICAgICAgICAgaWYg
c3lzLnBsYXRmb3JtID09ICdjeWd3aW4nOgogICAgICAgICAgICAgIyBTdGFydGluZyB0aGUgc2Vy
dmVyIHRha2VzIGxvbmdlciB0aW1lIG9uIEN5Z3dpbgotICAgICAgICAgICAgc2VydmVyX3N0YXJ0
ZWQgPSBzZWxmLl93YWl0X2Zvcl9hY3Rpb24oc2VsZi5faXNfc2VydmVyX3J1bm5pbmdfb25fYWxs
X3BvcnRzLCA2MCwgMTApCisgICAgICAgICAgICBzZXJ2ZXJfc3RhcnRlZCA9IHNlbGYuX3dhaXRf
Zm9yX2FjdGlvbihzZWxmLl9pc19zZXJ2ZXJfcnVubmluZ19vbl9hbGxfcG9ydHMsIDYwKQogICAg
ICAgICBlbHNlOgogICAgICAgICAgICAgc2VydmVyX3N0YXJ0ZWQgPSBzZWxmLl93YWl0X2Zvcl9h
Y3Rpb24oc2VsZi5faXNfc2VydmVyX3J1bm5pbmdfb25fYWxsX3BvcnRzKQogCkBAIC0xOTEsNyAr
MTkxLDcgQEAgY2xhc3MgSHR0cFNlcnZlckJhc2Uob2JqZWN0KToKICAgICAgICAgICAgICAgICBm
dWxsX3BhdGggPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oZm9sZGVyLCBmaWxlKQogICAgICAgICAg
ICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ucmVtb3ZlKGZ1bGxfcGF0aCkKIAotICAgIGRlZiBfd2Fp
dF9mb3JfYWN0aW9uKHNlbGYsIGFjdGlvbiwgd2FpdF9zZWNzPTIwLjAsIHNsZWVwX3NlY3M9MS4w
KToKKyAgICBkZWYgX3dhaXRfZm9yX2FjdGlvbihzZWxmLCBhY3Rpb24sIHdhaXRfc2Vjcz0yMC4w
LCBzbGVlcF9zZWNzPTAuMSk6CiAgICAgICAgICIiIlJlcGVhdCB0aGUgYWN0aW9uIGZvciB3YWl0
X3NlYyBvciB1bnRpbCBpdCBzdWNjZWVkcywgc2xlZXBpbmcgZm9yIHNsZWVwX3NlY3MKICAgICAg
ICAgaW4gYmV0d2VlbiBlYWNoIGF0dGVtcHQuIFJldHVybnMgd2hldGhlciBpdCBzdWNjZWVkZWQu
IiIiCiAgICAgICAgIHN0YXJ0X3RpbWUgPSB0aW1lLnRpbWUoKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9z
ZXJ2ZXIucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dl
Yl9wbGF0Zm9ybV90ZXN0X3NlcnZlci5weQppbmRleCA3ODEyZmM3YzBmYzZlYTQyZDQ3MWJlYWJj
ZWU1NDIxMmEzYzhhY2VkLi5iYWU2MmJhOWRkMDZkODIxZjMxYTdkNjdmNTMxMGFmODQ2YjkzZWM4
IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJz
L3dlYl9wbGF0Zm9ybV90ZXN0X3NlcnZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X3NlcnZlci5weQpAQCAtMTU3
LDYgKzE1Nyw5IEBAIGNsYXNzIFdlYlBsYXRmb3JtVGVzdFNlcnZlcihodHRwX3NlcnZlcl9iYXNl
Lkh0dHBTZXJ2ZXJCYXNlKToKICAgICAgICAgICAgIHNlbGYuX3dzb3V0LmNsb3NlKCkKICAgICAg
ICAgICAgIHNlbGYuX3dzb3V0ID0gTm9uZQogCisgICAgICAgIGlmIHNlbGYuX3Byb2Nlc3MgaXMg
bm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLl9wcm9jZXNzLnBvbGwoKQorCiAgICAgICAgIGlm
IHNlbGYuX3BpZDoKICAgICAgICAgICAgICMga2lsbF9wcm9jZXNzIHdpbGwgbm90IGtpbGwgdGhl
IHN1YnByb2Nlc3NlcywgaW50ZXJydXB0IGRvZXMgdGhlIGpvYi4KICAgICAgICAgICAgIHNlbGYu
X2V4ZWN1dGl2ZS5pbnRlcnJ1cHQoc2VsZi5fcGlkKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>442842</attachid>
            <date>2021-10-29 10:34:34 -0700</date>
            <delta_ts>2021-10-30 10:09:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225189-20211029183433.patch</filename>
            <type>text/plain</type>
            <size>6769</size>
            <attacher name="Sam Sneddon [:gsnedders]">gsnedders</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg0NTk2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZWMxZmFhNjhlMjcyMWViOTk3YzVkODI1YWRlMjVlM2M2
MjA0YzZiNy4uOTczMDUxZDliZWVjZmRmYzZlMDU2NTlhM2Y2ZmUxYWEyMDQyZTQ4NyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4
IEBACisyMDIxLTEwLTI5ICBTYW0gU25lZGRvbiAgPGdzbmVkZGVyc0BhcHBsZS5jb20+CisKKyAg
ICAgICAgRW5zdXJlIHdlIHN0b3AgTGF5b3V0VGVzdCBzZXJ2ZXJzIHdpdGhvdXQgdGhlbSBiZWNv
bWluZyB6b21iaWVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjUxODkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc3NjA0MTE5PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFsc28gaW5jcmVhc2UgdGhl
IHBvbGxpbmcgZnJlcXVlbmN5IGluIEh0dHBTZXJ2ZXJCYXNlLl93YWl0X2Zvcl9hY3Rpb24sIGFz
IHRoaXMgaXMgYSBtYWpvcgorICAgICAgICBzb3VyY2Ugb2YgZGVsYXkgd2hlbiBydW5uaW5nIHJ1
bi13ZWJraXQtdGVzdHMgLS1kcnktcnVuIGR1ZSB0byB0aGUgbnVtYmVyIG9mIHNlcnZlcnMgd2Un
cmUKKyAgICAgICAgc3RhcnRpbmcgbm93YWRheXMuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlX21vY2sucHk6CisgICAgICAgIChNb2NrUHJvY2Vz
cy5fX2luaXRfXyk6IFJlbmFtZSBzZWxmLnJldHVybmNvZGUgdG8gX3JldHVybmNvZGUKKyAgICAg
ICAgKE1vY2tQcm9jZXNzLnJldHVybmNvZGUpOiByZXR1cm5jb2RlIHNob3VsZCBiZSBOb25lIGlm
IHByb2Nlc3MgaXMgc3RpbGwgcnVubmluZworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXIucHk6CisgICAgICAgIChMaWdodHRwZC5fc3Bh
d25fcHJvY2Vzcyk6IFN0b3JlIFBvcGVuIG9iamVjdAorICAgICAgICAoTGlnaHR0cGQuX2NoZWNr
X2FuZF9raWxsKTogU2tpcCAia2lsbCIgaWYgcHJvY2VzcyBoYXMgcmV0dXJuZWQKKyAgICAgICAg
KExpZ2h0dHBkLl9pc19zZXJ2ZXJfcnVubmluZ19vbl9hbGxfcG9ydHMpOiBDb3JyZWN0bHkgcmFp
c2UgU2VydmVyRXJyb3IgaWYgaXQgaGFzIHJldHVybmVkCisgICAgICAgICogU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlcl9iYXNlLnB5OgorICAgICAgICAo
SHR0cFNlcnZlckJhc2Uuc3RhcnQpOiBDaGFuZ2UgcG9sbGluZyBmcmVxdWVuY3kgZm9yIGN5Z3dp
biBmcm9tIDAuMUh6IHRvIGRlZmF1bHQKKyAgICAgICAgKEh0dHBTZXJ2ZXJCYXNlLl93YWl0X2Zv
cl9hY3Rpb24pOiBJbmNyZWFzZSBkZWZhdWx0IHBvbGxpbmcgZnJlcXVlbmN5IHRvIDEwSHogZnJv
bSAxSHoKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dl
Yl9wbGF0Zm9ybV90ZXN0X3NlcnZlci5weToKKyAgICAgICAgKFdlYlBsYXRmb3JtVGVzdFNlcnZl
ci5fc3RvcF9ydW5uaW5nX3NlcnZlcik6IFBvbGwgZmlyc3Qgc28gd2UgZG9uJ3QgaGF2ZSB6b21i
aWVzIGtlZXBpbmcgcmVmZXJlbmNlcyB0byBwaXBlcworCiAyMDIxLTEwLTIxICBTYW0gU25lZGRv
biAgPGdzbmVkZGVyc0BhcHBsZS5jb20+CiAKICAgICAgICAgTW92ZSBsYXlvdXRfdGVzdF9maW5k
ZXIgdG8gbGF5b3V0X3Rlc3RfZmluZGVyX2xlZ2FjeQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZV9tb2NrLnB5IGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZV9tb2NrLnB5CmluZGV4IDViNGQ5MzUx
M2UyM2M1OTFkNGQ2MDZkYmQ5YWY2YzkzZGEzOTIxZjIuLmI3MGJlZTk4ZWQzZjM2ZGJjODA0Yzcw
ZmI3OTk4ZTJiMmNmNGRhMmEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29t
bW9uL3N5c3RlbS9leGVjdXRpdmVfbW9jay5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlX21vY2sucHkKQEAgLTQyLDkgKzQyLDE1IEBAIGNsYXNz
IE1vY2tQcm9jZXNzKG9iamVjdCk6CiAgICAgICAgIHNlbGYuc3Rkb3V0ID0gQnl0ZXNJTyhzdHJp
bmdfdXRpbHMuZW5jb2RlKHN0ZG91dCkpCiAgICAgICAgIHNlbGYuc3RkZXJyID0gQnl0ZXNJTyhz
dHJpbmdfdXRpbHMuZW5jb2RlKHN0ZGVycikpCiAgICAgICAgIHNlbGYuc3RkaW4gPSBCeXRlc0lP
KCkKLSAgICAgICAgc2VsZi5yZXR1cm5jb2RlID0gcmV0dXJuY29kZQorICAgICAgICBzZWxmLl9y
ZXR1cm5jb2RlID0gcmV0dXJuY29kZQogICAgICAgICBzZWxmLl9pc19ydW5uaW5nID0gRmFsc2UK
IAorICAgIEBwcm9wZXJ0eQorICAgIGRlZiByZXR1cm5jb2RlKHNlbGYpOgorICAgICAgICBpZiBz
ZWxmLl9pc19ydW5uaW5nOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJu
IHNlbGYuX3JldHVybmNvZGUKKwogICAgIGRlZiB3YWl0KHNlbGYpOgogICAgICAgICBzZWxmLl9p
c19ydW5uaW5nID0gRmFsc2UKICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3Nl
cnZlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0
cF9zZXJ2ZXIucHkKaW5kZXggOTRiNjZiYjM5MzlhMWEzYjgyNTU3YmVjODgxOWM2Njc2MWQ2NjY1
Yy4uNzZlMjcxOTYyNDgyNWQzZmRhYTZkNzJhYzA3M2JlYmZmZDg4YTk1OCAxMDA2NDQKLS0tIGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlci5w
eQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBf
c2VydmVyLnB5CkBAIC0xOTksOCArMTk5LDggQEAgY2xhc3MgTGlnaHR0cGQoaHR0cF9zZXJ2ZXJf
YmFzZS5IdHRwU2VydmVyQmFzZSk6CiAKICAgICBkZWYgX3NwYXduX3Byb2Nlc3Moc2VsZik6CiAg
ICAgICAgIF9sb2cuZGVidWcoJ1N0YXJ0aW5nICVzIHNlcnZlciwgY21kPSIlcyInICUgKHNlbGYu
X25hbWUsIHNlbGYuX3N0YXJ0X2NtZCkpCi0gICAgICAgIHByb2Nlc3MgPSBzZWxmLl9leGVjdXRp
dmUucG9wZW4oc2VsZi5fc3RhcnRfY21kLCBlbnY9c2VsZi5fZW52LCBzaGVsbD1GYWxzZSwgc3Rk
ZXJyPXNlbGYuX2V4ZWN1dGl2ZS5QSVBFKQotICAgICAgICBwaWQgPSBwcm9jZXNzLnBpZAorICAg
ICAgICBzZWxmLl9wcm9jZXNzID0gc2VsZi5fZXhlY3V0aXZlLnBvcGVuKHNlbGYuX3N0YXJ0X2Nt
ZCwgZW52PXNlbGYuX2Vudiwgc2hlbGw9RmFsc2UsIHN0ZGVycj1zZWxmLl9leGVjdXRpdmUuUElQ
RSkKKyAgICAgICAgcGlkID0gc2VsZi5fcHJvY2Vzcy5waWQKICAgICAgICAgc2VsZi5fZmlsZXN5
c3RlbS53cml0ZV90ZXh0X2ZpbGUoc2VsZi5fcGlkX2ZpbGUsIHN0cihwaWQpKQogICAgICAgICBy
ZXR1cm4gcGlkCiAKQEAgLTIxNSw2ICsyMTUsMTEgQEAgY2xhc3MgTGlnaHR0cGQoaHR0cF9zZXJ2
ZXJfYmFzZS5IdHRwU2VydmVyQmFzZSk6CiAgICAgICAgICAgICBzZWxmLl9maWxlc3lzdGVtLnJl
bW92ZShzZWxmLl9waWRfZmlsZSkKIAogICAgIGRlZiBfY2hlY2tfYW5kX2tpbGwoc2VsZik6Cisg
ICAgICAgIGlmIHNlbGYuX3Byb2Nlc3MgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLl9w
cm9jZXNzLnBvbGwoKQorICAgICAgICAgICAgaWYgc2VsZi5fcHJvY2Vzcy5yZXR1cm5jb2RlIGlz
IG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisKICAgICAgICAgaWYgc2Vs
Zi5fZXhlY3V0aXZlLmNoZWNrX3J1bm5pbmdfcGlkKHNlbGYuX3BpZCk6CiAgICAgICAgICAgICBo
b3N0ID0gc2VsZi5fcG9ydF9vYmouaG9zdAogICAgICAgICAgICAgaWYgaG9zdC5wbGF0Zm9ybS5p
c193aW4oKSBhbmQgbm90IGhvc3QucGxhdGZvcm0uaXNfY3lnd2luKCk6CkBAIC0yMjgsMyArMjMz
LDEyIEBAIGNsYXNzIExpZ2h0dHBkKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZlckJhc2UpOgog
ICAgICAgICAgICAgICAgIHNlbGYuX2V4ZWN1dGl2ZS5raWxsX3Byb2Nlc3Moc2VsZi5fcGlkKQog
ICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYg
X2lzX3NlcnZlcl9ydW5uaW5nX29uX2FsbF9wb3J0cyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5f
cHJvY2VzcyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX3Byb2Nlc3MucG9sbCgpCisg
ICAgICAgICAgICBpZiBzZWxmLl9wcm9jZXNzLnJldHVybmNvZGUgaXMgbm90IE5vbmU6CisgICAg
ICAgICAgICAgICAgX2xvZy5kZWJ1ZygiU2VydmVyIGlzbid0IHJ1bm5pbmcgYXQgYWxsIikKKyAg
ICAgICAgICAgICAgICByYWlzZSBodHRwX3NlcnZlcl9iYXNlLlNlcnZlckVycm9yKCJTZXJ2ZXIg
ZXhpdGVkIikKKworICAgICAgICByZXR1cm4gc3VwZXIoTGlnaHR0cGQsIHNlbGYpLl9pc19zZXJ2
ZXJfcnVubmluZ19vbl9hbGxfcG9ydHMoKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlcl9iYXNlLnB5IGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy9odHRwX3NlcnZlcl9iYXNlLnB5Cmlu
ZGV4IDM4ODAxZGMyMzgwMzliMDY4ZTE1MTMzYjMwZmFhMzc5YThkMzBhMmYuLmI4OGQ3YmVjMTI2
MWZiMThjNWUzMjQ3NzQyMmI5OWVjN2RkMWY0MzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvaHR0cF9zZXJ2ZXJfYmFzZS5weQorKysgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL2h0dHBfc2VydmVyX2Jh
c2UucHkKQEAgLTk5LDcgKzk5LDcgQEAgY2xhc3MgSHR0cFNlcnZlckJhc2Uob2JqZWN0KToKIAog
ICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2N5Z3dpbic6CiAgICAgICAgICAgICAjIFN0YXJ0
aW5nIHRoZSBzZXJ2ZXIgdGFrZXMgbG9uZ2VyIHRpbWUgb24gQ3lnd2luCi0gICAgICAgICAgICBz
ZXJ2ZXJfc3RhcnRlZCA9IHNlbGYuX3dhaXRfZm9yX2FjdGlvbihzZWxmLl9pc19zZXJ2ZXJfcnVu
bmluZ19vbl9hbGxfcG9ydHMsIDYwLCAxMCkKKyAgICAgICAgICAgIHNlcnZlcl9zdGFydGVkID0g
c2VsZi5fd2FpdF9mb3JfYWN0aW9uKHNlbGYuX2lzX3NlcnZlcl9ydW5uaW5nX29uX2FsbF9wb3J0
cywgNjApCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZXJ2ZXJfc3RhcnRlZCA9IHNlbGYu
X3dhaXRfZm9yX2FjdGlvbihzZWxmLl9pc19zZXJ2ZXJfcnVubmluZ19vbl9hbGxfcG9ydHMpCiAK
QEAgLTE5MSw3ICsxOTEsNyBAQCBjbGFzcyBIdHRwU2VydmVyQmFzZShvYmplY3QpOgogICAgICAg
ICAgICAgICAgIGZ1bGxfcGF0aCA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihmb2xkZXIsIGZpbGUp
CiAgICAgICAgICAgICAgICAgc2VsZi5fZmlsZXN5c3RlbS5yZW1vdmUoZnVsbF9wYXRoKQogCi0g
ICAgZGVmIF93YWl0X2Zvcl9hY3Rpb24oc2VsZiwgYWN0aW9uLCB3YWl0X3NlY3M9MjAuMCwgc2xl
ZXBfc2Vjcz0xLjApOgorICAgIGRlZiBfd2FpdF9mb3JfYWN0aW9uKHNlbGYsIGFjdGlvbiwgd2Fp
dF9zZWNzPTIwLjAsIHNsZWVwX3NlY3M9MC4xKToKICAgICAgICAgIiIiUmVwZWF0IHRoZSBhY3Rp
b24gZm9yIHdhaXRfc2VjIG9yIHVudGlsIGl0IHN1Y2NlZWRzLCBzbGVlcGluZyBmb3Igc2xlZXBf
c2VjcwogICAgICAgICBpbiBiZXR3ZWVuIGVhY2ggYXR0ZW1wdC4gUmV0dXJucyB3aGV0aGVyIGl0
IHN1Y2NlZWRlZC4iIiIKICAgICAgICAgc3RhcnRfdGltZSA9IHRpbWUudGltZSgpCmRpZmYgLS1n
aXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0
Zm9ybV90ZXN0X3NlcnZlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5CmluZGV4IDc4MTJmYzdjMGZjNmVh
NDJkNDcxYmVhYmNlZTU0MjEyYTNjOGFjZWQuLmJhZTYyYmE5ZGQwNmQ4MjFmMzFhN2Q2N2Y1MzEw
YWY4NDZiOTNlYzggMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5CisrKyBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVy
LnB5CkBAIC0xNTcsNiArMTU3LDkgQEAgY2xhc3MgV2ViUGxhdGZvcm1UZXN0U2VydmVyKGh0dHBf
c2VydmVyX2Jhc2UuSHR0cFNlcnZlckJhc2UpOgogICAgICAgICAgICAgc2VsZi5fd3NvdXQuY2xv
c2UoKQogICAgICAgICAgICAgc2VsZi5fd3NvdXQgPSBOb25lCiAKKyAgICAgICAgaWYgc2VsZi5f
cHJvY2VzcyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX3Byb2Nlc3MucG9sbCgpCisK
ICAgICAgICAgaWYgc2VsZi5fcGlkOgogICAgICAgICAgICAgIyBraWxsX3Byb2Nlc3Mgd2lsbCBu
b3Qga2lsbCB0aGUgc3VicHJvY2Vzc2VzLCBpbnRlcnJ1cHQgZG9lcyB0aGUgam9iLgogICAgICAg
ICAgICAgc2VsZi5fZXhlY3V0aXZlLmludGVycnVwdChzZWxmLl9waWQpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>