<?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>217921</bug_id>
          
          <creation_ts>2020-10-19 14:58:18 -0700</creation_ts>
          <short_desc>[Media in GPU Process] Some WebAudio layout tests generate strange noises</short_desc>
          <delta_ts>2020-10-20 13:42:13 -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>Web Audio</component>
          <version>Other</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="Peng Liu">peng.liu6</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1699455</commentid>
    <comment_count>0</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-10-19 14:58:18 -0700</bug_when>
    <thetext>When running some WebAudio layout tests, we can hear strange noises, which does not happen before r268632. I can reproduce the issue by keep reloading
https://webaudioapi.com/samples/oscillator/

The issue only happens on Mac.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699456</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-19 14:58:53 -0700</bug_when>
    <thetext>&lt;rdar://problem/70457775&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699798</commentid>
    <comment_count>2</comment_count>
      <attachid>411879</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-10-20 10:01:32 -0700</bug_when>
    <thetext>Created attachment 411879
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699803</commentid>
    <comment_count>3</comment_count>
      <attachid>411879</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2020-10-20 10:10:27 -0700</bug_when>
    <thetext>Comment on attachment 411879
Patch

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

&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:120
&gt; +        if (m_isPlaying == isPlaying)
&gt; +            return;

Is this necessary?

&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:161
&gt; +            uint64_t start = 0;
&gt; +            uint64_t end = 0;
&gt; +            m_ringBuffer-&gt;getCurrentFrameBounds(start, end);

getCurrentFrameBounds always updates start and end, so I don&apos;t think they need to be initialized.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699804</commentid>
    <comment_count>4</comment_count>
      <attachid>411879</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-20 10:10:55 -0700</bug_when>
    <thetext>Comment on attachment 411879
Patch

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

&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:119
&gt; +        if (m_isPlaying == isPlaying)

This check does not seem worth it for a simple boolean assignment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699807</commentid>
    <comment_count>5</comment_count>
      <attachid>411879</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-10-20 10:20:54 -0700</bug_when>
    <thetext>Comment on attachment 411879
Patch

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

&gt;&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:119
&gt;&gt; +        if (m_isPlaying == isPlaying)
&gt; 
&gt; This check does not seem worth it for a simple boolean assignment.

Agree, will fix it. Thanks!

&gt;&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:120
&gt;&gt; +            return;
&gt; 
&gt; Is this necessary?

No, it is not. :-)

&gt;&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:161
&gt;&gt; +            m_ringBuffer-&gt;getCurrentFrameBounds(start, end);
&gt; 
&gt; getCurrentFrameBounds always updates start and end, so I don&apos;t think they need to be initialized.

Agree, will fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699874</commentid>
    <comment_count>6</comment_count>
      <attachid>411879</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-10-20 12:26:42 -0700</bug_when>
    <thetext>Comment on attachment 411879
Patch

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

&gt; Source/WebKit/GPUProcess/media/RemoteAudioDestinationManager.cpp:192
&gt; +    Lock m_isPlayingLock;

Jer pointed out that the lock seems not necessary and it may block the main thread. So we discussed with Chris to confirm that.
I will remove this lock.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699878</commentid>
    <comment_count>7</comment_count>
      <attachid>411899</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-10-20 12:35:12 -0700</bug_when>
    <thetext>Created attachment 411899
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1699907</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-20 13:42:12 -0700</bug_when>
    <thetext>Committed r268758: &lt;https://trac.webkit.org/changeset/268758&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 411899.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411879</attachid>
            <date>2020-10-20 10:01:32 -0700</date>
            <delta_ts>2020-10-20 10:14:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217921-20201020100131.patch</filename>
            <type>text/plain</type>
            <size>10294</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NjkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJlZDkwMjM1NDg2YTY0YjE3
ZmFmOGIyMWE1ZTFmNDIzZmI5NmMyNTQuLmQ2MmUyOTYyNDY0NTExYjU4N2VkZjM5NDYyNzJjNDg1
NGY0YTE5NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkgQEAKKzIwMjAtMTAtMjAgIFBlbmcgTGl1
ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KKworICAgICAgICBbTWVkaWEgaW4gR1BVIFByb2Nlc3Nd
IFNvbWUgV2ViQXVkaW8gbGF5b3V0IHRlc3RzIGdlbmVyYXRlIHN0cmFuZ2Ugbm9pc2VzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTc5MjEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdGVBdWRpb0Rl
c3RpbmF0aW9uOjpyZW5kZXIoKSBzaG91bGQgbm90IHJldHVybiBgbm9FcnJgIHVubGVzcyB3ZSBj
YW4gcHJvdmlkZSB0aGUgcmVxdWVzdGVkCisgICAgICAgIHNhbXBsZXMgdG8gdGhlIHByb3ZpZGVk
IEF1ZGlvQnVmZmVyTGlzdC4gT3RoZXJ3aXNlLCB0aGUgYXVkaW8gb3V0cHV0IHVuaXQgb2YgQ29y
ZUF1ZGlvIHdpbGwgb3V0cHV0CisgICAgICAgIHRoZSBzYW1wbGVzIGluIHRoZSBBdWRpb0J1ZmZl
ckxpc3QsIHdoaWNoIG1pZ2h0IGJlIGludmFsaWQgZGF0YSBhdCB0aGUgYmVnaW5uaW5nIG9mIGEg
cmVuZGVyaW5nLgorICAgICAgICBXZSBoYXZlIG9ic2VydmVkIHRoYXQgaGFwcGVucyBpbiBzb21l
IGxheW91dCB0ZXN0cyBhbmQgc29tZSBXZWJBdWRpbyBleGFtcGxlIHBhZ2VzLgorCisgICAgICAg
IEN1cnJlbnRseSwgUmVtb3RlQXVkaW9EZXN0aW5hdGlvbjo6cmVuZGVyKCkgYWx3YXlzIHJldHVy
bnMgYG5vRXJyYCBpbiB0aGUgcmVuZGVyIHRocmVhZCAoaW1tZWRpYXRlbHkpLAorICAgICAgICBi
dXQgdGhlIEF1ZGlvQnVmZmVyTGlzdCAoaW9EYXRhKSBpcyB1cGRhdGVkIGluIHRoZSBtYWluIHRo
cmVhZCAobGF0ZXIpLiBUaGlzIHBhdGNoIGZpeGVzIHRoYXQgYnkgb25seQorICAgICAgICBzZXR0
aW5nIHRoZSBib3VuZHMgb2YgQ0FSaW5nQnVmZmVyIGluIHRoZSBjb21wbGV0aW9uIGhhbmRsZXIg
b2Ygc2VuZFdpdGhBc3luY1JlcGx5KCkgaW4gdGhlIG1haW4gdGhyZWFkLAorICAgICAgICBhbmQg
ZmV0Y2hpbmcgQXVkaW9CdWZmZXIocykgZnJvbSB0aGUgQ0FSaW5nQnVmZmVyIGluIHRoZSByZW5k
ZXIgdGhyZWFkLiBBbHNvLCBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uCisgICAgICAgIHRyYWNrcyB0
aGUgcHJvZ3Jlc3Mgb2YgZmV0Y2hpbmcsIHNvIFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eSBk
b2VzIG5vdCBuZWVkIHRvIHNlbmQgYHN0YXJ0RnJhbWVgCisgICAgICAgIGFuZCBgbnVtYmVyT2ZG
cmFtZXNUb1JlbmRlcmAgdG8gUmVtb3RlQXVkaW9EZXN0aW5hdGlvbiBpbiByZXNwb25zZSB0byBh
IGJ1ZmZlciByZXF1ZXN0LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyBhZGRzIGEgbG9jayBm
b3IgYG1faXNQbGF5aW5nYCBiZWNhdXNlIGl0IGlzIHVzZWQgaW4gYm90aCB0aGUgbWFpbiB0aHJl
YWQgYW5kIHRoZQorICAgICAgICByZW5kZXIgdGhyZWFkLgorCisgICAgICAgICogR1BVUHJvY2Vz
cy9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJL
aXQ6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb246OmF1ZGlvU2FtcGxlc1N0b3JhZ2VDaGFuZ2VkKToK
KyAgICAgICAgKFdlYktpdDo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvbjo6c3RhcnQpOiBVc2UgdGhl
IGxvY2suCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb246OnN0b3ApOiBE
aXR0by4KKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvbjo6c2V0SXNQbGF5
aW5nKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb246OnJl
bmRlcik6IE9ubHkgcmV0dXJuIGBub0VycmAgaWYgdGhlIGZ1bmN0aW9uIHJlbmRlcnMgdGhlIHJl
cXVlc3RlZAorICAgICAgICBzYW1wbGUgc3VjY2Vzc2Z1bGx5LgorCisgICAgICAgICogV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5OjpyZXF1ZXN0QnVmZmVyKTogUmVt
b3ZlIHVudXNlZCBwYXJhbWV0ZXJzLgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHk6OnJlbmRlck9uUmVuZGVyaW5nVGhlYWQpOiBEaXR0by4KKyAgICAgICAgKiBX
ZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaDogRGl0dG8u
CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblBy
b3h5Lm1lc3NhZ2VzLmluOiBEaXR0by4KKwogMjAyMC0xMC0xOSAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtHUFUgUHJvY2Vzc10gUmVtb3RlQXVkaW9EZXN0aW5h
dGlvbjo6cmVuZGVyKCkgc2hvdWxkIG5vdCBuZWVkIHRvIGRpc3BhdGNoIHRvIHRoZSBtYWluIHRo
cmVhZCB0byBkbyBJUEMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRp
YS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvbk1hbmFnZXIuY3BwCmluZGV4IDI3MWM4
NTBhZjRhYWNhNDUzNDI4NGI1NzE1YzgzMWQ4MjQ4Mjg5ZTguLmY5Zjc3NTViOWEyOTM3OWIxNzVl
M2MxNzk0NWYxYjAxZmZhMDc1NDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vz
cy9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25NYW5hZ2VyLmNwcApA
QCAtODIsNyArODIsNiBAQCBwdWJsaWM6CiAgICAgICAgIGF1dG8gbWVtb3J5ID0gU2hhcmVkTWVt
b3J5OjptYXAoaXBjSGFuZGxlLmhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFk
T25seSk7CiAgICAgICAgIHN0b3JhZ2UoKS5zZXRTdG9yYWdlKFdURk1vdmUobWVtb3J5KSk7CiAg
ICAgICAgIHN0b3JhZ2UoKS5zZXRSZWFkT25seSh0cnVlKTsKLQogICAgICAgICBtX3JpbmdCdWZm
ZXItPmFsbG9jYXRlKGRlc2NyaXB0aW9uLCBudW1iZXJPZkZyYW1lcyk7CiAgICAgfQogI2VuZGlm
CkBAIC05Myw3ICs5Miw3IEBAIHB1YmxpYzoKICAgICAgICAgaWYgKG1fYXVkaW9PdXRwdXRVbml0
QWRhcHRvci5zdGFydCgpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIG1faXNQbGF5
aW5nID0gdHJ1ZTsKKyAgICAgICAgc2V0SXNQbGF5aW5nKHRydWUpOwogI2VuZGlmCiAgICAgfQog
CkBAIC0xMDMsNyArMTAyLDcgQEAgcHVibGljOgogICAgICAgICBpZiAobV9hdWRpb091dHB1dFVu
aXRBZGFwdG9yLnN0b3AoKSkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBtX2lzUGxh
eWluZyA9IGZhbHNlOworICAgICAgICBzZXRJc1BsYXlpbmcoZmFsc2UpOwogCiAgICAgICAgIGlm
IChtX3Byb3RlY3RUaGlzRHVyaW5nR3JhY2VmdWxTaHV0ZG93bikgewogICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlQocmVmQ291bnQoKSA9PSAxKTsKQEAgLTExNCw2ICsxMTMsMTUgQEAgcHVibGlj
OgogCiAgICAgYm9vbCBpc1BsYXlpbmcoKSBjb25zdCB7IHJldHVybiBtX2lzUGxheWluZzsgfQog
CisgICAgdm9pZCBzZXRJc1BsYXlpbmcoYm9vbCBpc1BsYXlpbmcpCisgICAgeworICAgICAgICBh
dXRvIGxvY2tlciA9IGhvbGRMb2NrKG1faXNQbGF5aW5nTG9jayk7CisgICAgICAgIGlmIChtX2lz
UGxheWluZyA9PSBpc1BsYXlpbmcpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgbV9p
c1BsYXlpbmcgPSBpc1BsYXlpbmc7CisgICAgfQorCiBwcml2YXRlOgogICAgIFJlbW90ZUF1ZGlv
RGVzdGluYXRpb24oR1BVQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgUmVtb3Rl
QXVkaW9EZXN0aW5hdGlvbklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBpbnB1
dERldmljZUlkLCB1aW50MzJfdCBudW1iZXJPZklucHV0Q2hhbm5lbHMsIHVpbnQzMl90IG51bWJl
ck9mT3V0cHV0Q2hhbm5lbHMsIGZsb2F0IHNhbXBsZVJhdGUsIGZsb2F0IGhhcmR3YXJlU2FtcGxl
UmF0ZSkKICAgICAgICAgOiBtX2Nvbm5lY3Rpb24oY29ubmVjdGlvbikKQEAgLTEzOCwxNiArMTQ2
LDMzIEBAIHByaXZhdGU6CiAgICAgewogICAgICAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsK
IAorICAgICAgICBPU1N0YXR1cyBzdGF0dXMgPSAtMTsKKwogICAgICAgICBpZiAobV9wcm90ZWN0
VGhpc0R1cmluZ0dyYWNlZnVsU2h1dGRvd24pCi0gICAgICAgICAgICByZXR1cm4gbm9FcnI7Cisg
ICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIHsKKyAgICAgICAgICAgIGF1dG8g
bG9ja2VyID0gdHJ5SG9sZExvY2sobV9pc1BsYXlpbmdMb2NrKTsKKyAgICAgICAgICAgIGlmICgh
bG9ja2VyIHx8ICFtX2lzUGxheWluZykKKyAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwor
CisgICAgICAgICAgICB1aW50NjRfdCBzdGFydCA9IDA7CisgICAgICAgICAgICB1aW50NjRfdCBl
bmQgPSAwOworICAgICAgICAgICAgbV9yaW5nQnVmZmVyLT5nZXRDdXJyZW50RnJhbWVCb3VuZHMo
c3RhcnQsIGVuZCk7CisgICAgICAgICAgICBpZiAobV9zdGFydEZyYW1lID49IHN0YXJ0ICYmIG1f
c3RhcnRGcmFtZSArIG51bWJlck9mRnJhbWVzIDw9IGVuZCkgeworICAgICAgICAgICAgICAgIG1f
cmluZ0J1ZmZlci0+ZmV0Y2goaW9EYXRhLCBudW1iZXJPZkZyYW1lcywgbV9zdGFydEZyYW1lKTsK
KyAgICAgICAgICAgICAgICBtX3N0YXJ0RnJhbWUgKz0gbnVtYmVyT2ZGcmFtZXM7CisgICAgICAg
ICAgICAgICAgc3RhdHVzID0gbm9FcnI7CisgICAgICAgICAgICB9CisgICAgICAgIH0KIAotICAg
ICAgICBtX2Nvbm5lY3Rpb24uY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdl
czo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5OjpSZXF1ZXN0QnVmZmVyKHNhbXBsZVRpbWUs
IGhvc3RUaW1lLCBudW1iZXJPZkZyYW1lcyksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQodWludDY0
X3QsIHVpbnQ2NF90LCB1aW50NjRfdCwgdWludDY0X3QpPihbdGhpcywgcHJvdGVjdGVkVGhpcyA9
IG1ha2VSZWYoKnRoaXMpLCBpb0RhdGFdKGF1dG8gc3RhcnRGcmFtZSwgYXV0byBudW1iZXJPZkZy
YW1lc1RvUmVuZGVyLCBhdXRvIGJvdW5kc1N0YXJ0RnJhbWUsIGF1dG8gYm91bmRzRW5kRnJhbWUp
IG11dGFibGUgeworICAgICAgICBtX2Nvbm5lY3Rpb24uY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5
bmNSZXBseShNZXNzYWdlczo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5OjpSZXF1ZXN0QnVm
ZmVyKHNhbXBsZVRpbWUsIGhvc3RUaW1lLCBudW1iZXJPZkZyYW1lcyksIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQodWludDY0X3QsIHVpbnQ2NF90KT4oW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtl
UmVmKCp0aGlzKV0oYXV0byBib3VuZHNTdGFydEZyYW1lLCBhdXRvIGJvdW5kc0VuZEZyYW1lKSBt
dXRhYmxlIHsKICAgICAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0gICAgICAgICAg
ICBtX3JpbmdCdWZmZXItPnNldEN1cnJlbnRGcmFtZUJvdW5kcyhib3VuZHNTdGFydEZyYW1lLCBi
b3VuZHNFbmRGcmFtZSk7Ci0gICAgICAgICAgICBtX3JpbmdCdWZmZXItPmZldGNoKGlvRGF0YSwg
bnVtYmVyT2ZGcmFtZXNUb1JlbmRlciwgc3RhcnRGcmFtZSk7CisgICAgICAgICAgICBpZiAoYm91
bmRzRW5kRnJhbWUpCisgICAgICAgICAgICAgICAgbV9yaW5nQnVmZmVyLT5zZXRDdXJyZW50RnJh
bWVCb3VuZHMoYm91bmRzU3RhcnRGcmFtZSwgYm91bmRzRW5kRnJhbWUpOwogICAgICAgICB9LCBD
b21wbGV0aW9uSGFuZGxlckNhbGxUaHJlYWQ6Ok1haW5UaHJlYWQpLCBtX2lkLnRvVUludDY0KCkp
OwogCi0gICAgICAgIHJldHVybiBub0VycjsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9
CiAjZW5kaWYKIApAQCAtMTYxLDggKzE4NiwxMCBAQCBwcml2YXRlOgogCiAgICAgV2ViQ29yZTo6
Q0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uIG1fZGVzY3JpcHRpb247CiAgICAgVW5pcXVlUmVmPFdl
YkNvcmU6OkNBUmluZ0J1ZmZlcj4gbV9yaW5nQnVmZmVyOworICAgIHVpbnQ2NF90IG1fc3RhcnRG
cmFtZSB7IDAgfTsKICNlbmRpZgogCisgICAgTG9jayBtX2lzUGxheWluZ0xvY2s7CiAgICAgYm9v
bCBtX2lzUGxheWluZyB7IGZhbHNlIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Q
cm94eS5jcHAKaW5kZXggODQwMmRlZWY4YWFkYmM5ZTM0NDc0ZDgwODRlNTZmNGQwZDY2MDU1Ni4u
MTA4YWY1NDM4OTIxZWExYWQ3ZDQ1ZGI5ZjIyZDgwNWI5NWQ4MWQ1MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJv
eHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVk
aW9EZXN0aW5hdGlvblByb3h5LmNwcApAQCAtMTIzLDEyICsxMjMsMTIgQEAgdm9pZCBSZW1vdGVB
dWRpb0Rlc3RpbmF0aW9uUHJveHk6OnN0b3AoKQogfQogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi12
b2lkIFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6cmVxdWVzdEJ1ZmZlcihkb3VibGUgc2Ft
cGxlVGltZSwgdWludDY0X3QgaG9zdFRpbWUsIHVpbnQ2NF90IG51bWJlck9mRnJhbWVzLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90LCB1aW50NjRfdCwgdWludDY0X3QsIHVpbnQ2NF90
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5
OjpyZXF1ZXN0QnVmZmVyKGRvdWJsZSBzYW1wbGVUaW1lLCB1aW50NjRfdCBob3N0VGltZSwgdWlu
dDY0X3QgbnVtYmVyT2ZGcmFtZXMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQodWludDY0X3QsIHVp
bnQ2NF90KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBBU1NFUlQoIWlzTWFpblRocmVh
ZCgpKTsKIAogICAgIGlmICghaGFzRW5vdWdoRnJhbWVzKG51bWJlck9mRnJhbWVzKSkKLSAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoMCwgMCwgMCwgMCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKDAsIDApOwogCiAgICAgbV9yZW5kZXJDb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpOwogICAgIG1fYXVkaW9CdWZmZXJMaXN0LT5zZXRTYW1wbGVDb3VudChu
dW1iZXJPZkZyYW1lcyk7CkBAIC0xNTAsNyArMTUwLDcgQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHk6OnJlbmRlck9uUmVuZGVyaW5nVGhlYWQoc2l6ZV90IGZyYW1lc1RvUmVuZGVy
KQogICAgIHVpbnQ2NF90IGJvdW5kc1N0YXJ0RnJhbWU7CiAgICAgdWludDY0X3QgYm91bmRzRW5k
RnJhbWU7CiAgICAgbV9yaW5nQnVmZmVyLT5nZXRDdXJyZW50RnJhbWVCb3VuZHMoYm91bmRzU3Rh
cnRGcmFtZSwgYm91bmRzRW5kRnJhbWUpOwotICAgIG1fcmVuZGVyQ29tcGxldGlvbkhhbmRsZXIo
c3RhcnRGcmFtZSwgZnJhbWVzVG9SZW5kZXIsIGJvdW5kc1N0YXJ0RnJhbWUsIGJvdW5kc0VuZEZy
YW1lKTsKKyAgICBtX3JlbmRlckNvbXBsZXRpb25IYW5kbGVyKGJvdW5kc1N0YXJ0RnJhbWUsIGJv
dW5kc0VuZEZyYW1lKTsKIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHku
aAppbmRleCBlYjhkMGJiNGYyYTQxMTRhMTFlMjYwMGQ3MzhjMWVmNTJhOWJkYjk3Li44NzI1MmNm
NDQ0ZjVlZmU4N2RjODhjNGE3OTU2Yjg2ZDdjOGYzN2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5h
dGlvblByb3h5LmgKQEAgLTcxLDcgKzcxLDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlkUmVjZWl2
ZU1lc3NhZ2VGcm9tR1BVUHJvY2VzcyhJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQzo6
RGVjb2RlciYgZGVjb2RlcikgeyBkaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVy
KTsgfQogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi0gICAgdm9pZCByZXF1ZXN0QnVmZmVyKGRvdWJs
ZSBzYW1wbGVUaW1lLCB1aW50NjRfdCBob3N0VGltZSwgdWludDY0X3QgbnVtYmVyT2ZGcmFtZXMs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQodWludDY0X3Qgc3RhcnRGcmFtZSwgdWludDY0X3QgbnVt
YmVyT2ZGcmFtZXNUb1JlbmRlciwgdWludDY0X3QgYm91bmRzU3RhcnRGcmFtZSwgdWludDY0X3Qg
Ym91bmRzRW5kRnJhbWUpPiYmKTsKKyAgICB2b2lkIHJlcXVlc3RCdWZmZXIoZG91YmxlIHNhbXBs
ZVRpbWUsIHVpbnQ2NF90IGhvc3RUaW1lLCB1aW50NjRfdCBudW1iZXJPZkZyYW1lcywgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCh1aW50NjRfdCBib3VuZHNTdGFydEZyYW1lLCB1aW50NjRfdCBib3Vu
ZHNFbmRGcmFtZSk+JiYpOwogI2VuZGlmCiAKIHByaXZhdGU6CkBAIC0xMDUsNyArMTA1LDcgQEAg
cHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q0FSaW5nQnVmZmVyPiBtX3Jp
bmdCdWZmZXI7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OldlYkF1ZGlvQnVmZmVyTGlz
dD4gbV9hdWRpb0J1ZmZlckxpc3Q7CiAgICAgdWludDY0X3QgbV9jdXJyZW50RnJhbWUgeyAwIH07
Ci0gICAgV1RGOjpGdW5jdGlvbjx2b2lkKHVpbnQ2NF90LCB1aW50NjRfdCwgdWludDY0X3QsIHVp
bnQ2NF90KT4gbV9yZW5kZXJDb21wbGV0aW9uSGFuZGxlcjsKKyAgICBXVEY6OkZ1bmN0aW9uPHZv
aWQodWludDY0X3QsIHVpbnQ2NF90KT4gbV9yZW5kZXJDb21wbGV0aW9uSGFuZGxlcjsKICNlbmRp
ZgogCiAgICAgRnVuY3Rpb248dm9pZChGdW5jdGlvbjx2b2lkKCk+JiYpPiBtX2Rpc3BhdGNoVG9S
ZW5kZXJUaHJlYWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21l
ZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5Lm1lc3Nh
Z2VzLmluCmluZGV4IGJmMDRjMWM0NTBhZDZjZTZmOWMyOGU2MjQwYzYwMmMxNDI3ZDQ5NGYuLjM4
NWUxMmQ3ODEyNDczZTA1ZWY1NWJlNzhhNGEwYjY4MjRiZDk3OTUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5
Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVt
b3RlQXVkaW9EZXN0aW5hdGlvblByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yNSw3ICsyNSw3IEBACiAK
IG1lc3NhZ2VzIC0+IFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eSBOb3RSZWZDb3VudGVkIHsK
ICNpZiBQTEFURk9STShDT0NPQSkKLSAgICBSZXF1ZXN0QnVmZmVyKGRvdWJsZSBzYW1wbGVUaW1l
LCB1aW50NjRfdCBob3N0VGltZSwgdWludDY0X3QgbnVtYmVyT2ZGcmFtZXMpIC0+ICh1aW50NjRf
dCBzdGFydEZyYW1lLCB1aW50NjRfdCBudW1iZXJPZkZyYW1lc1RvUmVuZGVyLCB1aW50NjRfdCBi
b3VuZHNTdGFydEZyYW1lLCB1aW50NjRfdCBib3VuZHNFbmRGcmFtZSkgQXN5bmMKKyAgICBSZXF1
ZXN0QnVmZmVyKGRvdWJsZSBzYW1wbGVUaW1lLCB1aW50NjRfdCBob3N0VGltZSwgdWludDY0X3Qg
bnVtYmVyT2ZGcmFtZXMpIC0+ICh1aW50NjRfdCBib3VuZHNTdGFydEZyYW1lLCB1aW50NjRfdCBi
b3VuZHNFbmRGcmFtZSkgQXN5bmMKICNlbmRpZgogfQogCg==
</data>
<flag name="review"
          id="428209"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411899</attachid>
            <date>2020-10-20 12:35:12 -0700</date>
            <delta_ts>2020-10-20 13:42:13 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-217921-20201020123511.patch</filename>
            <type>text/plain</type>
            <size>8803</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4NjkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJlZDkwMjM1NDg2YTY0YjE3
ZmFmOGIyMWE1ZTFmNDIzZmI5NmMyNTQuLjc0MDZiMTEwNTgyYzkxNTQzZTVhY2FlZTc0ZTQzZjU4
YWFkMjdlOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjAtMTAtMjAgIFBlbmcgTGl1
ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KKworICAgICAgICBbTWVkaWEgaW4gR1BVIFByb2Nlc3Nd
IFNvbWUgV2ViQXVkaW8gbGF5b3V0IHRlc3RzIGdlbmVyYXRlIHN0cmFuZ2Ugbm9pc2VzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTc5MjEKKworICAg
ICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgUmVtb3RlQXVkaW9EZXN0
aW5hdGlvbjo6cmVuZGVyKCkgc2hvdWxkIG5vdCByZXR1cm4gYG5vRXJyYCB1bmxlc3Mgd2UgY2Fu
IHByb3ZpZGUgdGhlIHJlcXVlc3RlZAorICAgICAgICBzYW1wbGVzIHRvIHRoZSBwcm92aWRlZCBB
dWRpb0J1ZmZlckxpc3QuIE90aGVyd2lzZSwgdGhlIGF1ZGlvIG91dHB1dCB1bml0IG9mIENvcmVB
dWRpbyB3aWxsIG91dHB1dAorICAgICAgICB0aGUgc2FtcGxlcyBpbiB0aGUgQXVkaW9CdWZmZXJM
aXN0LCB3aGljaCBtaWdodCBiZSBpbnZhbGlkIGRhdGEgYXQgdGhlIGJlZ2lubmluZyBvZiBhIHJl
bmRlcmluZy4KKyAgICAgICAgV2UgaGF2ZSBvYnNlcnZlZCB0aGF0IGhhcHBlbnMgaW4gc29tZSBs
YXlvdXQgdGVzdHMgYW5kIHNvbWUgV2ViQXVkaW8gZXhhbXBsZSBwYWdlcy4KKworICAgICAgICBD
dXJyZW50bHksIFJlbW90ZUF1ZGlvRGVzdGluYXRpb246OnJlbmRlcigpIGFsd2F5cyByZXR1cm5z
IGBub0VycmAgaW4gdGhlIHJlbmRlciB0aHJlYWQgKGltbWVkaWF0ZWx5KSwKKyAgICAgICAgYnV0
IHRoZSBBdWRpb0J1ZmZlckxpc3QgKGlvRGF0YSkgaXMgdXBkYXRlZCBpbiB0aGUgbWFpbiB0aHJl
YWQgKGxhdGVyKS4gVGhpcyBwYXRjaCBmaXhlcyB0aGF0IGJ5IG9ubHkKKyAgICAgICAgc2V0dGlu
ZyB0aGUgYm91bmRzIG9mIENBUmluZ0J1ZmZlciBpbiB0aGUgY29tcGxldGlvbiBoYW5kbGVyIG9m
IHNlbmRXaXRoQXN5bmNSZXBseSgpIGluIHRoZSBtYWluIHRocmVhZCwKKyAgICAgICAgYW5kIGZl
dGNoaW5nIEF1ZGlvQnVmZmVyKHMpIGZyb20gdGhlIENBUmluZ0J1ZmZlciBpbiB0aGUgcmVuZGVy
IHRocmVhZC4gQWxzbywgUmVtb3RlQXVkaW9EZXN0aW5hdGlvbgorICAgICAgICB0cmFja3MgdGhl
IHByb2dyZXNzIG9mIGZldGNoaW5nLCBzbyBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkgZG9l
cyBub3QgbmVlZCB0byBzZW5kIGBzdGFydEZyYW1lYAorICAgICAgICBhbmQgYG51bWJlck9mRnJh
bWVzVG9SZW5kZXJgIHRvIFJlbW90ZUF1ZGlvRGVzdGluYXRpb24gaW4gcmVzcG9uc2UgdG8gYSBi
dWZmZXIgcmVxdWVzdC4KKworICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9E
ZXN0aW5hdGlvbk1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uOjphdWRpb1NhbXBsZXNTdG9yYWdlQ2hhbmdlZCk6CisgICAgICAgIChXZWJLaXQ6OlJl
bW90ZUF1ZGlvRGVzdGluYXRpb246OnJlbmRlcik6IE9ubHkgcmV0dXJuIGBub0VycmAgaWYgdGhl
IGZ1bmN0aW9uIHJlbmRlcnMgdGhlIHJlcXVlc3RlZAorICAgICAgICBzYW1wbGUgc3VjY2Vzc2Z1
bGx5LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5h
dGlvblByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQXVkaW9EZXN0aW5hdGlvblBy
b3h5OjpyZXF1ZXN0QnVmZmVyKTogUmVtb3ZlIHVudXNlZCBwYXJhbWV0ZXJzLgorICAgICAgICAo
V2ViS2l0OjpSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHk6OnJlbmRlck9uUmVuZGVyaW5nVGhl
YWQpOiBEaXR0by4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rl
c3RpbmF0aW9uUHJveHkuaDogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
UmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5Lm1lc3NhZ2VzLmluOiBEaXR0by4KKwogMjAyMC0x
MC0xOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtHUFUgUHJv
Y2Vzc10gUmVtb3RlQXVkaW9EZXN0aW5hdGlvbjo6cmVuZGVyKCkgc2hvdWxkIG5vdCBuZWVkIHRv
IGRpc3BhdGNoIHRvIHRoZSBtYWluIHRocmVhZCB0byBkbyBJUEMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFuYWdlci5j
cHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlv
bk1hbmFnZXIuY3BwCmluZGV4IDI3MWM4NTBhZjRhYWNhNDUzNDI4NGI1NzE1YzgzMWQ4MjQ4Mjg5
ZTguLjk1ODVmZGZhNzlkMDI4ZjU0OGVhZTAzYjI0NjU4NDA5ZDk0NTM4NTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uTWFu
YWdlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUF1ZGlv
RGVzdGluYXRpb25NYW5hZ2VyLmNwcApAQCAtODIsNyArODIsNiBAQCBwdWJsaWM6CiAgICAgICAg
IGF1dG8gbWVtb3J5ID0gU2hhcmVkTWVtb3J5OjptYXAoaXBjSGFuZGxlLmhhbmRsZSwgU2hhcmVk
TWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CiAgICAgICAgIHN0b3JhZ2UoKS5zZXRTdG9y
YWdlKFdURk1vdmUobWVtb3J5KSk7CiAgICAgICAgIHN0b3JhZ2UoKS5zZXRSZWFkT25seSh0cnVl
KTsKLQogICAgICAgICBtX3JpbmdCdWZmZXItPmFsbG9jYXRlKGRlc2NyaXB0aW9uLCBudW1iZXJP
ZkZyYW1lcyk7CiAgICAgfQogI2VuZGlmCkBAIC0xMzgsMTYgKzEzNywyNyBAQCBwcml2YXRlOgog
ICAgIHsKICAgICAgICAgQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CiAKLSAgICAgICAgaWYgKG1f
cHJvdGVjdFRoaXNEdXJpbmdHcmFjZWZ1bFNodXRkb3duKQotICAgICAgICAgICAgcmV0dXJuIG5v
RXJyOworICAgICAgICBPU1N0YXR1cyBzdGF0dXMgPSAtMTsKKworICAgICAgICBpZiAobV9wcm90
ZWN0VGhpc0R1cmluZ0dyYWNlZnVsU2h1dGRvd24gfHwgIW1faXNQbGF5aW5nKQorICAgICAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKworICAgICAgICB1aW50NjRfdCBzdGFydDsKKyAgICAgICAgdWlu
dDY0X3QgZW5kOworICAgICAgICBtX3JpbmdCdWZmZXItPmdldEN1cnJlbnRGcmFtZUJvdW5kcyhz
dGFydCwgZW5kKTsKKyAgICAgICAgaWYgKG1fc3RhcnRGcmFtZSA+PSBzdGFydCAmJiBtX3N0YXJ0
RnJhbWUgKyBudW1iZXJPZkZyYW1lcyA8PSBlbmQpIHsKKyAgICAgICAgICAgIG1fcmluZ0J1ZmZl
ci0+ZmV0Y2goaW9EYXRhLCBudW1iZXJPZkZyYW1lcywgbV9zdGFydEZyYW1lKTsKKyAgICAgICAg
ICAgIG1fc3RhcnRGcmFtZSArPSBudW1iZXJPZkZyYW1lczsKKyAgICAgICAgICAgIHN0YXR1cyA9
IG5vRXJyOworICAgICAgICB9CiAKLSAgICAgICAgbV9jb25uZWN0aW9uLmNvbm5lY3Rpb24oKS5z
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6
UmVxdWVzdEJ1ZmZlcihzYW1wbGVUaW1lLCBob3N0VGltZSwgbnVtYmVyT2ZGcmFtZXMpLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90LCB1aW50NjRfdCwgdWludDY0X3QsIHVpbnQ2NF90
KT4oW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgaW9EYXRhXShhdXRvIHN0
YXJ0RnJhbWUsIGF1dG8gbnVtYmVyT2ZGcmFtZXNUb1JlbmRlciwgYXV0byBib3VuZHNTdGFydEZy
YW1lLCBhdXRvIGJvdW5kc0VuZEZyYW1lKSBtdXRhYmxlIHsKKyAgICAgICAgbV9jb25uZWN0aW9u
LmNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlJlbW90ZUF1ZGlvRGVz
dGluYXRpb25Qcm94eTo6UmVxdWVzdEJ1ZmZlcihzYW1wbGVUaW1lLCBob3N0VGltZSwgbnVtYmVy
T2ZGcmFtZXMpLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90LCB1aW50NjRfdCk+KFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldKGF1dG8gYm91bmRzU3RhcnRGcmFt
ZSwgYXV0byBib3VuZHNFbmRGcmFtZSkgbXV0YWJsZSB7CiAgICAgICAgICAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOwotICAgICAgICAgICAgbV9yaW5nQnVmZmVyLT5zZXRDdXJyZW50RnJhbWVC
b3VuZHMoYm91bmRzU3RhcnRGcmFtZSwgYm91bmRzRW5kRnJhbWUpOwotICAgICAgICAgICAgbV9y
aW5nQnVmZmVyLT5mZXRjaChpb0RhdGEsIG51bWJlck9mRnJhbWVzVG9SZW5kZXIsIHN0YXJ0RnJh
bWUpOworICAgICAgICAgICAgaWYgKGJvdW5kc0VuZEZyYW1lKQorICAgICAgICAgICAgICAgIG1f
cmluZ0J1ZmZlci0+c2V0Q3VycmVudEZyYW1lQm91bmRzKGJvdW5kc1N0YXJ0RnJhbWUsIGJvdW5k
c0VuZEZyYW1lKTsKICAgICAgICAgfSwgQ29tcGxldGlvbkhhbmRsZXJDYWxsVGhyZWFkOjpNYWlu
VGhyZWFkKSwgbV9pZC50b1VJbnQ2NCgpKTsKIAotICAgICAgICByZXR1cm4gbm9FcnI7CisgICAg
ICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQogI2VuZGlmCiAKQEAgLTE2MSw2ICsxNzEsNyBAQCBw
cml2YXRlOgogCiAgICAgV2ViQ29yZTo6Q0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uIG1fZGVzY3Jp
cHRpb247CiAgICAgVW5pcXVlUmVmPFdlYkNvcmU6OkNBUmluZ0J1ZmZlcj4gbV9yaW5nQnVmZmVy
OworICAgIHVpbnQ2NF90IG1fc3RhcnRGcmFtZSB7IDAgfTsKICNlbmRpZgogCiAgICAgYm9vbCBt
X2lzUGxheWluZyB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5jcHAK
aW5kZXggODQwMmRlZWY4YWFkYmM5ZTM0NDc0ZDgwODRlNTZmNGQwZDY2MDU1Ni4uMTA4YWY1NDM4
OTIxZWExYWQ3ZDQ1ZGI5ZjIyZDgwNWI5NWQ4MWQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5h
dGlvblByb3h5LmNwcApAQCAtMTIzLDEyICsxMjMsMTIgQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3Rp
bmF0aW9uUHJveHk6OnN0b3AoKQogfQogCiAjaWYgUExBVEZPUk0oQ09DT0EpCi12b2lkIFJlbW90
ZUF1ZGlvRGVzdGluYXRpb25Qcm94eTo6cmVxdWVzdEJ1ZmZlcihkb3VibGUgc2FtcGxlVGltZSwg
dWludDY0X3QgaG9zdFRpbWUsIHVpbnQ2NF90IG51bWJlck9mRnJhbWVzLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKHVpbnQ2NF90LCB1aW50NjRfdCwgdWludDY0X3QsIHVpbnQ2NF90KT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3ZvaWQgUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5OjpyZXF1ZXN0
QnVmZmVyKGRvdWJsZSBzYW1wbGVUaW1lLCB1aW50NjRfdCBob3N0VGltZSwgdWludDY0X3QgbnVt
YmVyT2ZGcmFtZXMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQodWludDY0X3QsIHVpbnQ2NF90KT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKIAog
ICAgIGlmICghaGFzRW5vdWdoRnJhbWVzKG51bWJlck9mRnJhbWVzKSkKLSAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoMCwgMCwgMCwgMCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKDAsIDAp
OwogCiAgICAgbV9yZW5kZXJDb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpOwogICAgIG1fYXVkaW9CdWZmZXJMaXN0LT5zZXRTYW1wbGVDb3VudChudW1iZXJPZkZy
YW1lcyk7CkBAIC0xNTAsNyArMTUwLDcgQEAgdm9pZCBSZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJv
eHk6OnJlbmRlck9uUmVuZGVyaW5nVGhlYWQoc2l6ZV90IGZyYW1lc1RvUmVuZGVyKQogICAgIHVp
bnQ2NF90IGJvdW5kc1N0YXJ0RnJhbWU7CiAgICAgdWludDY0X3QgYm91bmRzRW5kRnJhbWU7CiAg
ICAgbV9yaW5nQnVmZmVyLT5nZXRDdXJyZW50RnJhbWVCb3VuZHMoYm91bmRzU3RhcnRGcmFtZSwg
Ym91bmRzRW5kRnJhbWUpOwotICAgIG1fcmVuZGVyQ29tcGxldGlvbkhhbmRsZXIoc3RhcnRGcmFt
ZSwgZnJhbWVzVG9SZW5kZXIsIGJvdW5kc1N0YXJ0RnJhbWUsIGJvdW5kc0VuZEZyYW1lKTsKKyAg
ICBtX3JlbmRlckNvbXBsZXRpb25IYW5kbGVyKGJvdW5kc1N0YXJ0RnJhbWUsIGJvdW5kc0VuZEZy
YW1lKTsKIH0KICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
R1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb0Rlc3RpbmF0aW9uUHJveHkuaAppbmRleCBl
YjhkMGJiNGYyYTQxMTRhMTFlMjYwMGQ3MzhjMWVmNTJhOWJkYjk3Li44NzI1MmNmNDQ0ZjVlZmU4
N2RjODhjNGE3OTU2Yjg2ZDdjOGYzN2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5
LmgKQEAgLTcxLDcgKzcxLDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2VG
cm9tR1BVUHJvY2VzcyhJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQzo6RGVjb2RlciYg
ZGVjb2RlcikgeyBkaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsgfQogCiAj
aWYgUExBVEZPUk0oQ09DT0EpCi0gICAgdm9pZCByZXF1ZXN0QnVmZmVyKGRvdWJsZSBzYW1wbGVU
aW1lLCB1aW50NjRfdCBob3N0VGltZSwgdWludDY0X3QgbnVtYmVyT2ZGcmFtZXMsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQodWludDY0X3Qgc3RhcnRGcmFtZSwgdWludDY0X3QgbnVtYmVyT2ZGcmFt
ZXNUb1JlbmRlciwgdWludDY0X3QgYm91bmRzU3RhcnRGcmFtZSwgdWludDY0X3QgYm91bmRzRW5k
RnJhbWUpPiYmKTsKKyAgICB2b2lkIHJlcXVlc3RCdWZmZXIoZG91YmxlIHNhbXBsZVRpbWUsIHVp
bnQ2NF90IGhvc3RUaW1lLCB1aW50NjRfdCBudW1iZXJPZkZyYW1lcywgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCh1aW50NjRfdCBib3VuZHNTdGFydEZyYW1lLCB1aW50NjRfdCBib3VuZHNFbmRGcmFt
ZSk+JiYpOwogI2VuZGlmCiAKIHByaXZhdGU6CkBAIC0xMDUsNyArMTA1LDcgQEAgcHJpdmF0ZToK
ICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViQ29yZTo6Q0FSaW5nQnVmZmVyPiBtX3JpbmdCdWZmZXI7
CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6OldlYkF1ZGlvQnVmZmVyTGlzdD4gbV9hdWRp
b0J1ZmZlckxpc3Q7CiAgICAgdWludDY0X3QgbV9jdXJyZW50RnJhbWUgeyAwIH07Ci0gICAgV1RG
OjpGdW5jdGlvbjx2b2lkKHVpbnQ2NF90LCB1aW50NjRfdCwgdWludDY0X3QsIHVpbnQ2NF90KT4g
bV9yZW5kZXJDb21wbGV0aW9uSGFuZGxlcjsKKyAgICBXVEY6OkZ1bmN0aW9uPHZvaWQodWludDY0
X3QsIHVpbnQ2NF90KT4gbV9yZW5kZXJDb21wbGV0aW9uSGFuZGxlcjsKICNlbmRpZgogCiAgICAg
RnVuY3Rpb248dm9pZChGdW5jdGlvbjx2b2lkKCk+JiYpPiBtX2Rpc3BhdGNoVG9SZW5kZXJUaHJl
YWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvRGVzdGluYXRpb25Qcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5Lm1lc3NhZ2VzLmluCmlu
ZGV4IGJmMDRjMWM0NTBhZDZjZTZmOWMyOGU2MjQwYzYwMmMxNDI3ZDQ5NGYuLjM4NWUxMmQ3ODEy
NDczZTA1ZWY1NWJlNzhhNGEwYjY4MjRiZDk3OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9EZXN0aW5hdGlvblByb3h5Lm1lc3NhZ2Vz
LmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9E
ZXN0aW5hdGlvblByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yNSw3ICsyNSw3IEBACiAKIG1lc3NhZ2Vz
IC0+IFJlbW90ZUF1ZGlvRGVzdGluYXRpb25Qcm94eSBOb3RSZWZDb3VudGVkIHsKICNpZiBQTEFU
Rk9STShDT0NPQSkKLSAgICBSZXF1ZXN0QnVmZmVyKGRvdWJsZSBzYW1wbGVUaW1lLCB1aW50NjRf
dCBob3N0VGltZSwgdWludDY0X3QgbnVtYmVyT2ZGcmFtZXMpIC0+ICh1aW50NjRfdCBzdGFydEZy
YW1lLCB1aW50NjRfdCBudW1iZXJPZkZyYW1lc1RvUmVuZGVyLCB1aW50NjRfdCBib3VuZHNTdGFy
dEZyYW1lLCB1aW50NjRfdCBib3VuZHNFbmRGcmFtZSkgQXN5bmMKKyAgICBSZXF1ZXN0QnVmZmVy
KGRvdWJsZSBzYW1wbGVUaW1lLCB1aW50NjRfdCBob3N0VGltZSwgdWludDY0X3QgbnVtYmVyT2ZG
cmFtZXMpIC0+ICh1aW50NjRfdCBib3VuZHNTdGFydEZyYW1lLCB1aW50NjRfdCBib3VuZHNFbmRG
cmFtZSkgQXN5bmMKICNlbmRpZgogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>