<?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>218381</bug_id>
          
          <creation_ts>2020-10-30 04:43:37 -0700</creation_ts>
          <short_desc>[WTF] Coding style issues in MediaTime.h</short_desc>
          <delta_ts>2020-12-02 16:59:00 -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>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218228</see_also>
          <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="Philippe Normand">pnormand</reporter>
          <assigned_to name="Philippe Normand">pnormand</assigned_to>
          <cc>achristensen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</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>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1703022</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-30 04:43:37 -0700</bug_when>
    <thetext>ERROR: Source/WTF/wtf/MediaTime.h:34:  Alphabetical sorting problem.  [build/include_order] [4]                                                                                                                    
ERROR: Source/WTF/wtf/MediaTime.h:69:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:70:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:75:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:76:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:77:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:78:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:93:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:94:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:95:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:96:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:97:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:98:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:99:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fun
ction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                          ERROR: Source/WTF/wtf/MediaTime.h:100:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fu
nction definition out-of-line.  [build/webcore_export] [4]                        
ERROR: Source/WTF/wtf/MediaTime.h:101:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fu
nction definition out-of-line.  [build/webcore_export] [4]                                                                                                                                                         
ERROR: Source/WTF/wtf/MediaTime.h:109:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fu
nction definition out-of-line.  [build/webcore_export] [4]
ERROR: Source/WTF/wtf/MediaTime.h:110:  Inline functions should not be in classes annotated with WTF_EXPORT_PRIVATE. Remove the macro from the class and apply it to each appropriate method, or move the inline fu
nction definition out-of-line.  [build/webcore_export] [4]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1703024</commentid>
    <comment_count>1</comment_count>
      <attachid>412731</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-30 04:51:16 -0700</bug_when>
    <thetext>Created attachment 412731
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1703307</commentid>
    <comment_count>2</comment_count>
      <attachid>412731</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-10-30 21:03:10 -0700</bug_when>
    <thetext>Comment on attachment 412731
Patch

I think these functions are small and should be inline function. So defining in the header is better. Let&apos;s remove WTF_EXPORT_PRIVATE from the class, and annotate some of actually exported functions with WTF_EXPORT_PRIVATE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705186</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-11-06 03:44:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/71114972&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707745</commentid>
    <comment_count>4</comment_count>
      <attachid>414209</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-11-16 02:27:21 -0800</bug_when>
    <thetext>Created attachment 414209
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707746</commentid>
    <comment_count>5</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-11-16 02:28:13 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #2)
&gt; Comment on attachment 412731 [details]
&gt; Patch
&gt; 
&gt; I think these functions are small and should be inline function. So defining
&gt; in the header is better. Let&apos;s remove WTF_EXPORT_PRIVATE from the class, and
&gt; annotate some of actually exported functions with WTF_EXPORT_PRIVATE.

Thanks for the review Yusuke, the patch is updated accordingly, hopefully :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707769</commentid>
    <comment_count>6</comment_count>
      <attachid>414216</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-11-16 05:08:47 -0800</bug_when>
    <thetext>Created attachment 414216
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707880</commentid>
    <comment_count>7</comment_count>
      <attachid>414216</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-11-16 10:21:52 -0800</bug_when>
    <thetext>Comment on attachment 414216
Patch

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

&gt; Source/WTF/wtf/MediaTime.h:68
&gt; +    inline MediaTime&amp; operator+=(const MediaTime&amp; rhs) { return *this = *this + rhs; }

I don&apos;t think the &quot;inline&quot; keyword is needed here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707889</commentid>
    <comment_count>8</comment_count>
      <attachid>414252</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-11-16 10:39:46 -0800</bug_when>
    <thetext>Created attachment 414252
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1707905</commentid>
    <comment_count>9</comment_count>
      <attachid>414252</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-11-16 11:06:19 -0800</bug_when>
    <thetext>Comment on attachment 414252
Patch

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

&gt; Source/WTF/wtf/MediaTime.h:74
&gt; +    inline bool operator&lt;(const MediaTime&amp; rhs) const { return compare(rhs) == LessThan; }

here either.

&gt; Source/WTF/wtf/MediaTime.h:92
&gt; +    inline bool isValid() const { return m_timeFlags &amp; Valid; }

ditto

&gt; Source/WTF/wtf/MediaTime.h:107
&gt; +    inline const int64_t&amp; timeValue() const { return m_timeValue; }

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1708190</commentid>
    <comment_count>10</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-11-17 04:19:28 -0800</bug_when>
    <thetext>If no inline specifier remains in this patch I&apos;m not sure why Yusuke r-&apos;ed the initial patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1711522</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-12-02 16:59:00 -0800</bug_when>
    <thetext>(In reply to Philippe Normand from comment #10)
&gt; If no inline specifier remains in this patch I&apos;m not sure why Yusuke r-&apos;ed
&gt; the initial patch.

In C++, inline attribute is not for inlining.
If you define function in header, compiler will decide whether inlines or not regardless of inline attribute is attached or not.

But unless LTO is enabled (WTF / JSC is not LTO enabled for now), function defined in cpp will not be inlined.

So the patch should define function in header, and inline attribute is not necessary.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412731</attachid>
            <date>2020-10-30 04:51:16 -0700</date>
            <delta_ts>2020-11-16 02:27:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218381-20201030045114.patch</filename>
            <type>text/plain</type>
            <size>7680</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5MTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDFmODcxYjk1YmJhMWVmOWQ1ZjdiYzg5
MDg4OTQ0NjQzNTRmNzljYWYuLmRlM2Y0MjNiMDRkOTFiNzViYzE0YWIxMzI0MzBmNzZlNmQ2NWNh
MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMjAtMTAtMzAgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVEZdIENvZGluZyBzdHlsZSBpc3N1ZXMg
aW4gTWVkaWFUaW1lLmgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODM4MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE1vdmUgaW5saW5lIGZ1bmN0aW9uIGRlZmluaXRpb25zIG91dC1vZi1saW5lIGJlY2F1
c2UgTWVkaWFUaW1lIGlzIGFubm90YXRlZCB3aXRoCisgICAgICAgIFdURl9FWFBPUlRfUFJJVkFU
RS4KKworICAgICAgICAqIHd0Zi9NZWRpYVRpbWUuY3BwOgorICAgICAgICAoV1RGOjpNZWRpYVRp
bWU6Om9wZXJhdG9yKz0pOgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yLT0pOgor
ICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yPCBjb25zdCk6CisgICAgICAgIChXVEY6
Ok1lZGlhVGltZTo6b3BlcmF0b3I+IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpv
cGVyYXRvciE9IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj09IGNv
bnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj49IGNvbnN0KToKKyAgICAg
ICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcjw9IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVk
aWFUaW1lOjppc1ZhbGlkIGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc0ludmFs
aWQgY29uc3QpOgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Omhhc0JlZW5Sb3VuZGVkIGNvbnN0
KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc1Bvc2l0aXZlSW5maW5pdGUgY29uc3QpOgor
ICAgICAgICAoV1RGOjpNZWRpYVRpbWU6OmlzTmVnYXRpdmVJbmZpbml0ZSBjb25zdCk6CisgICAg
ICAgIChXVEY6Ok1lZGlhVGltZTo6aXNJbmRlZmluaXRlIGNvbnN0KToKKyAgICAgICAgKFdURjo6
TWVkaWFUaW1lOjpoYXNEb3VibGVWYWx1ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGlt
ZTo6dGltZUZsYWdzIGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjp0aW1lVmFsdWUg
Y29uc3QpOgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6OnRpbWVTY2FsZSBjb25zdCk6CisgICAg
ICAgICogd3RmL01lZGlhVGltZS5oOgorCiAyMDIwLTEwLTI5ICBKaWV3ZW4gVGFuICA8amlld2Vu
X3RhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW1dlYkF1dGhuXSBNYWtlIFdlYkNvbnRlbnQgcHJv
Y2VzcyB0YWxrIHRvIHRoZSBXZWJBdXRobiBwcm9jZXNzIGZvciBXZWJBdXRobiByZXF1ZXN0cwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmNwcCBiL1NvdXJjZS9XVEYvd3Rm
L01lZGlhVGltZS5jcHAKaW5kZXggOTM5Nzc1MDhiNGM1N2UxOTIxMDdjYmIyYzU2MmZmYmVhZTVm
OGE2Ny4uNWNlZTQxM2E4NTMwZWViYjg1OTAyYjQ3NWIwMWYxMjc0MzU1NGExNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9NZWRp
YVRpbWUuY3BwCkBAIC0xNjMsNiArMTYzLDE2IEBAIGRvdWJsZSBNZWRpYVRpbWU6OnRvRG91Ymxl
KCkgY29uc3QKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8ZG91YmxlPihtX3RpbWVWYWx1ZSkgLyBt
X3RpbWVTY2FsZTsKIH0KIAorTWVkaWFUaW1lJiBNZWRpYVRpbWU6Om9wZXJhdG9yKz0oY29uc3Qg
TWVkaWFUaW1lJiByaHMpCit7CisgICAgcmV0dXJuICp0aGlzID0gKnRoaXMgKyByaHM7Cit9CisK
K01lZGlhVGltZSYgTWVkaWFUaW1lOjpvcGVyYXRvci09KGNvbnN0IE1lZGlhVGltZSYgcmhzKQor
eworICAgIHJldHVybiAqdGhpcyA9ICp0aGlzIC0gcmhzOworfQorCiBNZWRpYVRpbWUmIE1lZGlh
VGltZTo6b3BlcmF0b3I9KGNvbnN0IE1lZGlhVGltZSYgcmhzKQogewogICAgIG1fdGltZVZhbHVl
ID0gcmhzLm1fdGltZVZhbHVlOwpAQCAtMzIwLDYgKzMzMCwzNiBAQCBNZWRpYVRpbWUgTWVkaWFU
aW1lOjpvcGVyYXRvciooaW50MzJfdCByaHMpIGNvbnN0CiAgICAgcmV0dXJuIGE7CiB9CiAKK2Jv
b2wgTWVkaWFUaW1lOjpvcGVyYXRvcjwoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0Cit7Cisg
ICAgcmV0dXJuIGNvbXBhcmUocmhzKSA9PSBMZXNzVGhhbjsKK30KKworYm9vbCBNZWRpYVRpbWU6
Om9wZXJhdG9yPihjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3QKK3sKKyAgICByZXR1cm4gY29t
cGFyZShyaHMpID09IEdyZWF0ZXJUaGFuOworfQorCitib29sIE1lZGlhVGltZTo6b3BlcmF0b3Ih
PShjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3QKK3sKKyAgICByZXR1cm4gY29tcGFyZShyaHMp
ICE9IEVxdWFsVG87Cit9CisKK2Jvb2wgTWVkaWFUaW1lOjpvcGVyYXRvcj09KGNvbnN0IE1lZGlh
VGltZSYgcmhzKSBjb25zdAoreworICAgIHJldHVybiBjb21wYXJlKHJocykgPT0gRXF1YWxUbzsK
K30KKworYm9vbCBNZWRpYVRpbWU6Om9wZXJhdG9yPj0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNv
bnN0Cit7CisgICAgcmV0dXJuIGNvbXBhcmUocmhzKSA+PSBFcXVhbFRvOworfQorCitib29sIE1l
ZGlhVGltZTo6b3BlcmF0b3I8PShjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3QKK3sKKyAgICBy
ZXR1cm4gY29tcGFyZShyaHMpIDw9IEVxdWFsVG87Cit9CisKIGJvb2wgTWVkaWFUaW1lOjpvcGVy
YXRvciEoKSBjb25zdAogewogICAgIHJldHVybiAobV90aW1lRmxhZ3MgPT0gVmFsaWQgJiYgIW1f
dGltZVZhbHVlKQpAQCAtNDM1LDYgKzQ3NSw0NiBAQCBib29sIE1lZGlhVGltZTo6aXNCZXR3ZWVu
KGNvbnN0IE1lZGlhVGltZSYgYSwgY29uc3QgTWVkaWFUaW1lJiBiKSBjb25zdAogICAgIHJldHVy
biAqdGhpcyA+IGEgJiYgKnRoaXMgPCBiOwogfQogCitib29sIE1lZGlhVGltZTo6aXNWYWxpZCgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIG1fdGltZUZsYWdzICYgVmFsaWQ7Cit9CisKK2Jvb2wgTWVk
aWFUaW1lOjppc0ludmFsaWQoKSBjb25zdAoreworICAgIHJldHVybiAhaXNWYWxpZCgpOworfQor
Citib29sIE1lZGlhVGltZTo6aGFzQmVlblJvdW5kZWQoKSBjb25zdAoreworICAgIHJldHVybiBt
X3RpbWVGbGFncyAmIEhhc0JlZW5Sb3VuZGVkOworfQorCitib29sIE1lZGlhVGltZTo6aXNQb3Np
dGl2ZUluZmluaXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV90aW1lRmxhZ3MgJiBQb3NpdGl2
ZUluZmluaXRlOworfQorCitib29sIE1lZGlhVGltZTo6aXNOZWdhdGl2ZUluZmluaXRlKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV90aW1lRmxhZ3MgJiBOZWdhdGl2ZUluZmluaXRlOworfQorCiti
b29sIE1lZGlhVGltZTo6aXNJbmRlZmluaXRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV90aW1l
RmxhZ3MgJiBJbmRlZmluaXRlOworfQorCitib29sIE1lZGlhVGltZTo6aGFzRG91YmxlVmFsdWUo
KSBjb25zdAoreworICAgIHJldHVybiBtX3RpbWVGbGFncyAmIERvdWJsZVZhbHVlOworfQorCit1
aW50OF90IE1lZGlhVGltZTo6dGltZUZsYWdzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV90aW1l
RmxhZ3M7Cit9CisKIGNvbnN0IE1lZGlhVGltZSYgTWVkaWFUaW1lOjp6ZXJvVGltZSgpCiB7CiAg
ICAgc3RhdGljIGNvbnN0IE1lZGlhVGltZSB0aW1lKDAsIDEsIFZhbGlkKTsKQEAgLTU1NSw2ICs2
MzUsMTYgQEAgdm9pZCBNZWRpYVRpbWU6OnNldFRpbWVTY2FsZSh1aW50MzJfdCB0aW1lU2NhbGUs
IFJvdW5kaW5nRmxhZ3MgZmxhZ3MpCiAgICAgfQogfQogCitjb25zdCBpbnQ2NF90JiBNZWRpYVRp
bWU6OnRpbWVWYWx1ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fdGltZVZhbHVlOworfQorCitj
b25zdCB1aW50MzJfdCYgTWVkaWFUaW1lOjp0aW1lU2NhbGUoKSBjb25zdAoreworICAgIHJldHVy
biBtX3RpbWVTY2FsZTsKK30KKwogdm9pZCBNZWRpYVRpbWU6OmR1bXAoUHJpbnRTdHJlYW0mIG91
dCkgY29uc3QKIHsKICAgICBvdXQucHJpbnQoInsiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYv
d3RmL01lZGlhVGltZS5oIGIvU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgKaW5kZXggOTcxMTE2
OTcyYTgwNDlhYjJmZjBjMjg5ZWUwMTAwYjNjMzYyYjgxZi4uMzczZmEwOWRlZWEwNWJjYzhkNjUz
MTFlNDllMzI4MDMxODE5MTIxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvTWVkaWFUaW1l
LmgKKysrIGIvU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgKQEAgLTI4LDE0ICsyOCwxMyBAQAog
CiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+Ci0jaW5jbHVkZSA8
d3RmL0pTT05WYWx1ZXMuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KLQogI2lu
Y2x1ZGUgPGNtYXRoPgogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxtYXRoLmg+CiAjaW5j
bHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KKyNpbmNsdWRlIDx3
dGYvSlNPTlZhbHVlcy5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1l
c3BhY2UgV1RGIHsKIApAQCAtNjYsMTggKzY1LDE4IEBAIHB1YmxpYzoKICAgICBkb3VibGUgdG9E
b3VibGUoKSBjb25zdDsKIAogICAgIE1lZGlhVGltZSYgb3BlcmF0b3I9KGNvbnN0IE1lZGlhVGlt
ZSYgcmhzKTsKLSAgICBNZWRpYVRpbWUmIG9wZXJhdG9yKz0oY29uc3QgTWVkaWFUaW1lJiByaHMp
IHsgcmV0dXJuICp0aGlzID0gKnRoaXMgKyByaHM7IH0KLSAgICBNZWRpYVRpbWUmIG9wZXJhdG9y
LT0oY29uc3QgTWVkaWFUaW1lJiByaHMpIHsgcmV0dXJuICp0aGlzID0gKnRoaXMgLSByaHM7IH0K
KyAgICBNZWRpYVRpbWUmIG9wZXJhdG9yKz0oY29uc3QgTWVkaWFUaW1lJiByaHMpOworICAgIE1l
ZGlhVGltZSYgb3BlcmF0b3ItPShjb25zdCBNZWRpYVRpbWUmIHJocyk7CiAgICAgTWVkaWFUaW1l
IG9wZXJhdG9yKyhjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3Q7CiAgICAgTWVkaWFUaW1lIG9w
ZXJhdG9yLShjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3Q7CiAgICAgTWVkaWFUaW1lIG9wZXJh
dG9yLSgpIGNvbnN0OwogICAgIE1lZGlhVGltZSBvcGVyYXRvciooaW50MzJfdCkgY29uc3Q7Ci0g
ICAgYm9vbCBvcGVyYXRvcjwoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNv
bXBhcmUocmhzKSA9PSBMZXNzVGhhbjsgfQotICAgIGJvb2wgb3BlcmF0b3I+KGNvbnN0IE1lZGlh
VGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJocykgPT0gR3JlYXRlclRoYW47IH0K
LSAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJu
IGNvbXBhcmUocmhzKSAhPSBFcXVhbFRvOyB9Ci0gICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IE1l
ZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJocykgPT0gRXF1YWxUbzsgfQot
ICAgIGJvb2wgb3BlcmF0b3I+PShjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3QgeyByZXR1cm4g
Y29tcGFyZShyaHMpID49IEVxdWFsVG87IH0KLSAgICBib29sIG9wZXJhdG9yPD0oY29uc3QgTWVk
aWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBhcmUocmhzKSA8PSBFcXVhbFRvOyB9Cisg
ICAgYm9vbCBvcGVyYXRvcjwoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OworICAgIGJvb2wg
b3BlcmF0b3I+KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdDsKKyAgICBib29sIG9wZXJhdG9y
IT0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OworICAgIGJvb2wgb3BlcmF0b3I9PShjb25z
dCBNZWRpYVRpbWUmIHJocykgY29uc3Q7CisgICAgYm9vbCBvcGVyYXRvcj49KGNvbnN0IE1lZGlh
VGltZSYgcmhzKSBjb25zdDsKKyAgICBib29sIG9wZXJhdG9yPD0oY29uc3QgTWVkaWFUaW1lJiBy
aHMpIGNvbnN0OwogICAgIGJvb2wgb3BlcmF0b3IhKCkgY29uc3Q7CiAgICAgZXhwbGljaXQgb3Bl
cmF0b3IgYm9vbCgpIGNvbnN0OwogCkBAIC05MCwxNCArODksMTQgQEAgcHVibGljOgogICAgIENv
bXBhcmlzb25GbGFncyBjb21wYXJlKGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdDsKICAgICBi
b29sIGlzQmV0d2Vlbihjb25zdCBNZWRpYVRpbWUmLCBjb25zdCBNZWRpYVRpbWUmKSBjb25zdDsK
IAotICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgVmFsaWQ7
IH0KLSAgICBib29sIGlzSW52YWxpZCgpIGNvbnN0IHsgcmV0dXJuICFpc1ZhbGlkKCk7IH0KLSAg
ICBib29sIGhhc0JlZW5Sb3VuZGVkKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBIYXNC
ZWVuUm91bmRlZDsgfQotICAgIGJvb2wgaXNQb3NpdGl2ZUluZmluaXRlKCkgY29uc3QgeyByZXR1
cm4gbV90aW1lRmxhZ3MgJiBQb3NpdGl2ZUluZmluaXRlOyB9Ci0gICAgYm9vbCBpc05lZ2F0aXZl
SW5maW5pdGUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIE5lZ2F0aXZlSW5maW5pdGU7
IH0KLSAgICBib29sIGlzSW5kZWZpbml0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYg
SW5kZWZpbml0ZTsgfQotICAgIGJvb2wgaGFzRG91YmxlVmFsdWUoKSBjb25zdCB7IHJldHVybiBt
X3RpbWVGbGFncyAmIERvdWJsZVZhbHVlOyB9Ci0gICAgdWludDhfdCB0aW1lRmxhZ3MoKSBjb25z
dCB7IHJldHVybiBtX3RpbWVGbGFnczsgfQorICAgIGJvb2wgaXNWYWxpZCgpIGNvbnN0OworICAg
IGJvb2wgaXNJbnZhbGlkKCkgY29uc3Q7CisgICAgYm9vbCBoYXNCZWVuUm91bmRlZCgpIGNvbnN0
OworICAgIGJvb2wgaXNQb3NpdGl2ZUluZmluaXRlKCkgY29uc3Q7CisgICAgYm9vbCBpc05lZ2F0
aXZlSW5maW5pdGUoKSBjb25zdDsKKyAgICBib29sIGlzSW5kZWZpbml0ZSgpIGNvbnN0OworICAg
IGJvb2wgaGFzRG91YmxlVmFsdWUoKSBjb25zdDsKKyAgICB1aW50OF90IHRpbWVGbGFncygpIGNv
bnN0OwogCiAgICAgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgemVyb1RpbWUoKTsKICAgICBzdGF0
aWMgY29uc3QgTWVkaWFUaW1lJiBpbnZhbGlkVGltZSgpOwpAQCAtMTA1LDggKzEwNCw4IEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiBuZWdhdGl2ZUluZmluaXRlVGltZSgp
OwogICAgIHN0YXRpYyBjb25zdCBNZWRpYVRpbWUmIGluZGVmaW5pdGVUaW1lKCk7CiAKLSAgICBj
b25zdCBpbnQ2NF90JiB0aW1lVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVWYWx1ZTsgfQot
ICAgIGNvbnN0IHVpbnQzMl90JiB0aW1lU2NhbGUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVTY2Fs
ZTsgfQorICAgIGNvbnN0IGludDY0X3QmIHRpbWVWYWx1ZSgpIGNvbnN0OworICAgIGNvbnN0IHVp
bnQzMl90JiB0aW1lU2NhbGUoKSBjb25zdDsKIAogICAgIHZvaWQgZHVtcChQcmludFN0cmVhbSYg
b3V0KSBjb25zdDsKICAgICBTdHJpbmcgdG9TdHJpbmcoKSBjb25zdDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414209</attachid>
            <date>2020-11-16 02:27:21 -0800</date>
            <delta_ts>2020-11-16 05:08:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218381-20201116022720.patch</filename>
            <type>text/plain</type>
            <size>5929</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5ODQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDE3NTZkMDQwOGMyZjczYjlkZmI4MmRh
ODM0MzBmNjc2ZjdlZDM4N2YuLjE2ZTU2MjVjYzgwZjBhNDViM2VlYzU4YzQ2NDVlNWIxOWYyOTVj
NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMjAtMTAtMzAgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVEZdIENvZGluZyBzdHlsZSBpc3N1ZXMg
aW4gTWVkaWFUaW1lLmgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODM4MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlbW92ZSB0aGUgY2xhc3MtbGV2ZWwgV1RGX0VYUE9SVF9QUklWQVRFIGRlY2xhcmF0
aW9uIGFuZCBtYXJrIG1vc3Qgb2YgdGhlIGV4cG9ydGVkCisgICAgICAgIGZ1bmN0aW9ucyBhcyBz
dWNoLCBvciBpbmxpbmUgZm9yIHRoZSBvbmVzIGRlZmluZWQgYXMgc3VjaC4KKworICAgICAgICAq
IHd0Zi9NZWRpYVRpbWUuY3BwOgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yKz0p
OgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yLT0pOgorICAgICAgICAoV1RGOjpN
ZWRpYVRpbWU6Om9wZXJhdG9yPCBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGltZTo6b3Bl
cmF0b3I+IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvciE9IGNvbnN0
KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAg
KFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj49IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFU
aW1lOjpvcGVyYXRvcjw9IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc1ZhbGlk
IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc0ludmFsaWQgY29uc3QpOgorICAg
ICAgICAoV1RGOjpNZWRpYVRpbWU6Omhhc0JlZW5Sb3VuZGVkIGNvbnN0KToKKyAgICAgICAgKFdU
Rjo6TWVkaWFUaW1lOjppc1Bvc2l0aXZlSW5maW5pdGUgY29uc3QpOgorICAgICAgICAoV1RGOjpN
ZWRpYVRpbWU6OmlzTmVnYXRpdmVJbmZpbml0ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlh
VGltZTo6aXNJbmRlZmluaXRlIGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpoYXNE
b3VibGVWYWx1ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGltZTo6dGltZUZsYWdzIGNv
bnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjp0aW1lVmFsdWUgY29uc3QpOgorICAgICAg
ICAoV1RGOjpNZWRpYVRpbWU6OnRpbWVTY2FsZSBjb25zdCk6CisgICAgICAgICogd3RmL01lZGlh
VGltZS5oOgorCiAyMDIwLTExLTE0ICBEb24gT2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5j
b20+CiAKICAgICAgICAgW2NsYW5nLXRpZHldIFJ1biBtb2Rlcm5pemUtdXNlLW92ZXJyaWRlIHRo
cm91Z2ggSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaCBiL1NvdXJj
ZS9XVEYvd3RmL01lZGlhVGltZS5oCmluZGV4IDk3MTExNjk3MmE4MDQ5YWIyZmYwYzI4OWVlMDEw
MGIzYzM2MmI4MWYuLmIzMjYyMjg5OWQ1NTExNmExZWU0NzAyMWQ3MjllMDkzMzc1ZGQxMTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL01lZGlhVGltZS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L01lZGlhVGltZS5oCkBAIC0yOCwyMCArMjgsMTkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNs
dWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotI2luY2x1ZGUgPHd0Zi9KU09OVmFsdWVzLmg+Ci0jaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KICNpbmNsdWRlIDxjbWF0aD4KICNpbmNsdWRl
IDxsaW1pdHM+CiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CisjaW5jbHVkZSA8d3RmL0pTT05WYWx1ZXMuaD4KKyNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKIGNsYXNzIFBy
aW50U3RyZWFtOwogCi1jbGFzcyBXVEZfRVhQT1JUX1BSSVZBVEUgTWVkaWFUaW1lIGZpbmFsIHsK
K2NsYXNzIE1lZGlhVGltZSBmaW5hbCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6CiAgICAgZW51bSB7CkBAIC01MywxNyArNTIsMTcgQEAgcHVibGljOgogICAgICAgICBE
b3VibGVWYWx1ZSA9IDEgPDwgNSwKICAgICB9OwogCi0gICAgY29uc3RleHByIE1lZGlhVGltZSgp
OwotICAgIGNvbnN0ZXhwciBNZWRpYVRpbWUoaW50NjRfdCB2YWx1ZSwgdWludDMyX3Qgc2NhbGUs
IHVpbnQ4X3QgZmxhZ3MgPSBWYWxpZCk7Ci0gICAgTWVkaWFUaW1lKGNvbnN0IE1lZGlhVGltZSYg
cmhzKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgY29uc3RleHByIE1lZGlhVGltZSgpOworICAg
IFdURl9FWFBPUlRfUFJJVkFURSBjb25zdGV4cHIgTWVkaWFUaW1lKGludDY0X3QgdmFsdWUsIHVp
bnQzMl90IHNjYWxlLCB1aW50OF90IGZsYWdzID0gVmFsaWQpOworICAgIFdURl9FWFBPUlRfUFJJ
VkFURSBNZWRpYVRpbWUoY29uc3QgTWVkaWFUaW1lJiByaHMpOwogCi0gICAgc3RhdGljIE1lZGlh
VGltZSBjcmVhdGVXaXRoRmxvYXQoZmxvYXQgZmxvYXRUaW1lKTsKLSAgICBzdGF0aWMgTWVkaWFU
aW1lIGNyZWF0ZVdpdGhGbG9hdChmbG9hdCBmbG9hdFRpbWUsIHVpbnQzMl90IHRpbWVTY2FsZSk7
Ci0gICAgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRG91YmxlKGRvdWJsZSBkb3VibGVUaW1l
KTsKLSAgICBzdGF0aWMgTWVkaWFUaW1lIGNyZWF0ZVdpdGhEb3VibGUoZG91YmxlIGRvdWJsZVRp
bWUsIHVpbnQzMl90IHRpbWVTY2FsZSk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBN
ZWRpYVRpbWUgY3JlYXRlV2l0aEZsb2F0KGZsb2F0IGZsb2F0VGltZSk7CisgICAgV1RGX0VYUE9S
VF9QUklWQVRFIHN0YXRpYyBNZWRpYVRpbWUgY3JlYXRlV2l0aEZsb2F0KGZsb2F0IGZsb2F0VGlt
ZSwgdWludDMyX3QgdGltZVNjYWxlKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIE1l
ZGlhVGltZSBjcmVhdGVXaXRoRG91YmxlKGRvdWJsZSBkb3VibGVUaW1lKTsKKyAgICBXVEZfRVhQ
T1JUX1BSSVZBVEUgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRG91YmxlKGRvdWJsZSBkb3Vi
bGVUaW1lLCB1aW50MzJfdCB0aW1lU2NhbGUpOwogCi0gICAgZmxvYXQgdG9GbG9hdCgpIGNvbnN0
OwotICAgIGRvdWJsZSB0b0RvdWJsZSgpIGNvbnN0OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBm
bG9hdCB0b0Zsb2F0KCkgY29uc3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIGRvdWJsZSB0b0Rv
dWJsZSgpIGNvbnN0OwogCiAgICAgTWVkaWFUaW1lJiBvcGVyYXRvcj0oY29uc3QgTWVkaWFUaW1l
JiByaHMpOwogICAgIE1lZGlhVGltZSYgb3BlcmF0b3IrPShjb25zdCBNZWRpYVRpbWUmIHJocykg
eyByZXR1cm4gKnRoaXMgPSAqdGhpcyArIHJoczsgfQpAQCAtODgsMjUgKzg3LDI1IEBAIHB1Ymxp
YzoKICAgICB9IENvbXBhcmlzb25GbGFnczsKIAogICAgIENvbXBhcmlzb25GbGFncyBjb21wYXJl
KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdDsKLSAgICBib29sIGlzQmV0d2Vlbihjb25zdCBN
ZWRpYVRpbWUmLCBjb25zdCBNZWRpYVRpbWUmKSBjb25zdDsKLQotICAgIGJvb2wgaXNWYWxpZCgp
IGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgVmFsaWQ7IH0KLSAgICBib29sIGlzSW52YWxp
ZCgpIGNvbnN0IHsgcmV0dXJuICFpc1ZhbGlkKCk7IH0KLSAgICBib29sIGhhc0JlZW5Sb3VuZGVk
KCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBIYXNCZWVuUm91bmRlZDsgfQotICAgIGJv
b2wgaXNQb3NpdGl2ZUluZmluaXRlKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBQb3Np
dGl2ZUluZmluaXRlOyB9Ci0gICAgYm9vbCBpc05lZ2F0aXZlSW5maW5pdGUoKSBjb25zdCB7IHJl
dHVybiBtX3RpbWVGbGFncyAmIE5lZ2F0aXZlSW5maW5pdGU7IH0KLSAgICBib29sIGlzSW5kZWZp
bml0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgSW5kZWZpbml0ZTsgfQotICAgIGJv
b2wgaGFzRG91YmxlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIERvdWJsZVZh
bHVlOyB9Ci0gICAgdWludDhfdCB0aW1lRmxhZ3MoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFn
czsgfQotCi0gICAgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgemVyb1RpbWUoKTsKLSAgICBzdGF0
aWMgY29uc3QgTWVkaWFUaW1lJiBpbnZhbGlkVGltZSgpOwotICAgIHN0YXRpYyBjb25zdCBNZWRp
YVRpbWUmIHBvc2l0aXZlSW5maW5pdGVUaW1lKCk7Ci0gICAgc3RhdGljIGNvbnN0IE1lZGlhVGlt
ZSYgbmVnYXRpdmVJbmZpbml0ZVRpbWUoKTsKLSAgICBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiBp
bmRlZmluaXRlVGltZSgpOwotCi0gICAgY29uc3QgaW50NjRfdCYgdGltZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV90aW1lVmFsdWU7IH0KLSAgICBjb25zdCB1aW50MzJfdCYgdGltZVNjYWxlKCkg
Y29uc3QgeyByZXR1cm4gbV90aW1lU2NhbGU7IH0KKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgYm9v
bCBpc0JldHdlZW4oY29uc3QgTWVkaWFUaW1lJiwgY29uc3QgTWVkaWFUaW1lJikgY29uc3Q7CisK
KyAgICBpbmxpbmUgYm9vbCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBW
YWxpZDsgfQorICAgIGlubGluZSBib29sIGlzSW52YWxpZCgpIGNvbnN0IHsgcmV0dXJuICFpc1Zh
bGlkKCk7IH0KKyAgICBpbmxpbmUgYm9vbCBoYXNCZWVuUm91bmRlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fdGltZUZsYWdzICYgSGFzQmVlblJvdW5kZWQ7IH0KKyAgICBpbmxpbmUgYm9vbCBpc1Bvc2l0
aXZlSW5maW5pdGUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIFBvc2l0aXZlSW5maW5p
dGU7IH0KKyAgICBpbmxpbmUgYm9vbCBpc05lZ2F0aXZlSW5maW5pdGUoKSBjb25zdCB7IHJldHVy
biBtX3RpbWVGbGFncyAmIE5lZ2F0aXZlSW5maW5pdGU7IH0KKyAgICBpbmxpbmUgYm9vbCBpc0lu
ZGVmaW5pdGUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIEluZGVmaW5pdGU7IH0KKyAg
ICBpbmxpbmUgYm9vbCBoYXNEb3VibGVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdz
ICYgRG91YmxlVmFsdWU7IH0KKyAgICBpbmxpbmUgdWludDhfdCB0aW1lRmxhZ3MoKSBjb25zdCB7
IHJldHVybiBtX3RpbWVGbGFnczsgfQorCisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBj
b25zdCBNZWRpYVRpbWUmIHplcm9UaW1lKCk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRp
YyBjb25zdCBNZWRpYVRpbWUmIGludmFsaWRUaW1lKCk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRF
IHN0YXRpYyBjb25zdCBNZWRpYVRpbWUmIHBvc2l0aXZlSW5maW5pdGVUaW1lKCk7CisgICAgV1RG
X0VYUE9SVF9QUklWQVRFIHN0YXRpYyBjb25zdCBNZWRpYVRpbWUmIG5lZ2F0aXZlSW5maW5pdGVU
aW1lKCk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBjb25zdCBNZWRpYVRpbWUmIGlu
ZGVmaW5pdGVUaW1lKCk7CisKKyAgICBpbmxpbmUgY29uc3QgaW50NjRfdCYgdGltZVZhbHVlKCkg
Y29uc3QgeyByZXR1cm4gbV90aW1lVmFsdWU7IH0KKyAgICBpbmxpbmUgY29uc3QgdWludDMyX3Qm
IHRpbWVTY2FsZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZVNjYWxlOyB9CiAKICAgICB2b2lkIGR1
bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3Q7CiAgICAgU3RyaW5nIHRvU3RyaW5nKCkgY29uc3Q7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414216</attachid>
            <date>2020-11-16 05:08:47 -0800</date>
            <delta_ts>2020-11-16 10:39:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218381-20201116050846.patch</filename>
            <type>text/plain</type>
            <size>9231</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5ODUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDY3MjBkOTc2MmM2MDU1OTA2ZWYxOTY0
NGZjNDMxMzA2Yjg1NDkwODQuLjc4YTEzNzliZDJiYWYwZGZmNWYxNDJmODkwYmIyN2VjZjYyZjc3
ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMjAtMTAtMzAgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVEZdIENvZGluZyBzdHlsZSBpc3N1ZXMg
aW4gTWVkaWFUaW1lLmgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODM4MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlbW92ZSB0aGUgY2xhc3MtbGV2ZWwgV1RGX0VYUE9SVF9QUklWQVRFIGRlY2xhcmF0
aW9uIGFuZCBtYXJrIG1vc3Qgb2YgdGhlIGV4cG9ydGVkCisgICAgICAgIGZ1bmN0aW9ucyBhcyBz
dWNoLCBvciBpbmxpbmUgZm9yIHRoZSBvbmVzIGRlZmluZWQgYXMgc3VjaC4KKworICAgICAgICAq
IHd0Zi9NZWRpYVRpbWUuY3BwOgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yKz0p
OgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yLT0pOgorICAgICAgICAoV1RGOjpN
ZWRpYVRpbWU6Om9wZXJhdG9yPCBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGltZTo6b3Bl
cmF0b3I+IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvciE9IGNvbnN0
KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAg
KFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj49IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFU
aW1lOjpvcGVyYXRvcjw9IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc1ZhbGlk
IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc0ludmFsaWQgY29uc3QpOgorICAg
ICAgICAoV1RGOjpNZWRpYVRpbWU6Omhhc0JlZW5Sb3VuZGVkIGNvbnN0KToKKyAgICAgICAgKFdU
Rjo6TWVkaWFUaW1lOjppc1Bvc2l0aXZlSW5maW5pdGUgY29uc3QpOgorICAgICAgICAoV1RGOjpN
ZWRpYVRpbWU6OmlzTmVnYXRpdmVJbmZpbml0ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlh
VGltZTo6aXNJbmRlZmluaXRlIGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpoYXNE
b3VibGVWYWx1ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGltZTo6dGltZUZsYWdzIGNv
bnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjp0aW1lVmFsdWUgY29uc3QpOgorICAgICAg
ICAoV1RGOjpNZWRpYVRpbWU6OnRpbWVTY2FsZSBjb25zdCk6CisgICAgICAgICogd3RmL01lZGlh
VGltZS5oOgorCiAyMDIwLTExLTE2ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNv
bT4KIAogICAgICAgICBSZS1kaXNhYmxlIGFzeW5jIG92ZXJmbG93IHNjcm9sbGluZyBmb3IgVVNF
KE5JQ09TSUEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaCBiL1NvdXJj
ZS9XVEYvd3RmL01lZGlhVGltZS5oCmluZGV4IDk3MTExNjk3MmE4MDQ5YWIyZmYwYzI4OWVlMDEw
MGIzYzM2MmI4MWYuLjAzOWFiYTZkOWY1NWQ2ODM5MTRmMzg3YThlMWQzNGE0YWEyN2RjYTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL01lZGlhVGltZS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L01lZGlhVGltZS5oCkBAIC0yOCwyMCArMjgsMTkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNs
dWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotI2luY2x1ZGUgPHd0Zi9KU09OVmFsdWVzLmg+Ci0jaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KICNpbmNsdWRlIDxjbWF0aD4KICNpbmNsdWRl
IDxsaW1pdHM+CiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CisjaW5jbHVkZSA8d3RmL0pTT05WYWx1ZXMuaD4KKyNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKIGNsYXNzIFBy
aW50U3RyZWFtOwogCi1jbGFzcyBXVEZfRVhQT1JUX1BSSVZBVEUgTWVkaWFUaW1lIGZpbmFsIHsK
K2NsYXNzIE1lZGlhVGltZSBmaW5hbCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6CiAgICAgZW51bSB7CkBAIC01MywzMyArNTIsMzMgQEAgcHVibGljOgogICAgICAgICBE
b3VibGVWYWx1ZSA9IDEgPDwgNSwKICAgICB9OwogCi0gICAgY29uc3RleHByIE1lZGlhVGltZSgp
OwotICAgIGNvbnN0ZXhwciBNZWRpYVRpbWUoaW50NjRfdCB2YWx1ZSwgdWludDMyX3Qgc2NhbGUs
IHVpbnQ4X3QgZmxhZ3MgPSBWYWxpZCk7Ci0gICAgTWVkaWFUaW1lKGNvbnN0IE1lZGlhVGltZSYg
cmhzKTsKLQotICAgIHN0YXRpYyBNZWRpYVRpbWUgY3JlYXRlV2l0aEZsb2F0KGZsb2F0IGZsb2F0
VGltZSk7Ci0gICAgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRmxvYXQoZmxvYXQgZmxvYXRU
aW1lLCB1aW50MzJfdCB0aW1lU2NhbGUpOwotICAgIHN0YXRpYyBNZWRpYVRpbWUgY3JlYXRlV2l0
aERvdWJsZShkb3VibGUgZG91YmxlVGltZSk7Ci0gICAgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVX
aXRoRG91YmxlKGRvdWJsZSBkb3VibGVUaW1lLCB1aW50MzJfdCB0aW1lU2NhbGUpOwotCi0gICAg
ZmxvYXQgdG9GbG9hdCgpIGNvbnN0OwotICAgIGRvdWJsZSB0b0RvdWJsZSgpIGNvbnN0OwotCi0g
ICAgTWVkaWFUaW1lJiBvcGVyYXRvcj0oY29uc3QgTWVkaWFUaW1lJiByaHMpOwotICAgIE1lZGlh
VGltZSYgb3BlcmF0b3IrPShjb25zdCBNZWRpYVRpbWUmIHJocykgeyByZXR1cm4gKnRoaXMgPSAq
dGhpcyArIHJoczsgfQotICAgIE1lZGlhVGltZSYgb3BlcmF0b3ItPShjb25zdCBNZWRpYVRpbWUm
IHJocykgeyByZXR1cm4gKnRoaXMgPSAqdGhpcyAtIHJoczsgfQotICAgIE1lZGlhVGltZSBvcGVy
YXRvcisoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OwotICAgIE1lZGlhVGltZSBvcGVyYXRv
ci0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OwotICAgIE1lZGlhVGltZSBvcGVyYXRvci0o
KSBjb25zdDsKLSAgICBNZWRpYVRpbWUgb3BlcmF0b3IqKGludDMyX3QpIGNvbnN0OwotICAgIGJv
b2wgb3BlcmF0b3I8KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJl
KHJocykgPT0gTGVzc1RoYW47IH0KLSAgICBib29sIG9wZXJhdG9yPihjb25zdCBNZWRpYVRpbWUm
IHJocykgY29uc3QgeyByZXR1cm4gY29tcGFyZShyaHMpID09IEdyZWF0ZXJUaGFuOyB9Ci0gICAg
Ym9vbCBvcGVyYXRvciE9KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21w
YXJlKHJocykgIT0gRXF1YWxUbzsgfQotICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBNZWRpYVRp
bWUmIHJocykgY29uc3QgeyByZXR1cm4gY29tcGFyZShyaHMpID09IEVxdWFsVG87IH0KLSAgICBi
b29sIG9wZXJhdG9yPj0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBh
cmUocmhzKSA+PSBFcXVhbFRvOyB9Ci0gICAgYm9vbCBvcGVyYXRvcjw9KGNvbnN0IE1lZGlhVGlt
ZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJocykgPD0gRXF1YWxUbzsgfQotICAgIGJv
b2wgb3BlcmF0b3IhKCkgY29uc3Q7Ci0gICAgZXhwbGljaXQgb3BlcmF0b3IgYm9vbCgpIGNvbnN0
OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBjb25zdGV4cHIgTWVkaWFUaW1lKCk7CisgICAgV1RG
X0VYUE9SVF9QUklWQVRFIGNvbnN0ZXhwciBNZWRpYVRpbWUoaW50NjRfdCB2YWx1ZSwgdWludDMy
X3Qgc2NhbGUsIHVpbnQ4X3QgZmxhZ3MgPSBWYWxpZCk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRF
IE1lZGlhVGltZShjb25zdCBNZWRpYVRpbWUmIHJocyk7CisKKyAgICBXVEZfRVhQT1JUX1BSSVZB
VEUgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRmxvYXQoZmxvYXQgZmxvYXRUaW1lKTsKKyAg
ICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRmxvYXQoZmxv
YXQgZmxvYXRUaW1lLCB1aW50MzJfdCB0aW1lU2NhbGUpOworICAgIFdURl9FWFBPUlRfUFJJVkFU
RSBzdGF0aWMgTWVkaWFUaW1lIGNyZWF0ZVdpdGhEb3VibGUoZG91YmxlIGRvdWJsZVRpbWUpOwor
ICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgTWVkaWFUaW1lIGNyZWF0ZVdpdGhEb3VibGUo
ZG91YmxlIGRvdWJsZVRpbWUsIHVpbnQzMl90IHRpbWVTY2FsZSk7CisKKyAgICBXVEZfRVhQT1JU
X1BSSVZBVEUgZmxvYXQgdG9GbG9hdCgpIGNvbnN0OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBk
b3VibGUgdG9Eb3VibGUoKSBjb25zdDsKKworICAgIFdURl9FWFBPUlRfUFJJVkFURSBNZWRpYVRp
bWUmIG9wZXJhdG9yPShjb25zdCBNZWRpYVRpbWUmIHJocyk7CisgICAgaW5saW5lIE1lZGlhVGlt
ZSYgb3BlcmF0b3IrPShjb25zdCBNZWRpYVRpbWUmIHJocykgeyByZXR1cm4gKnRoaXMgPSAqdGhp
cyArIHJoczsgfQorICAgIGlubGluZSBNZWRpYVRpbWUmIG9wZXJhdG9yLT0oY29uc3QgTWVkaWFU
aW1lJiByaHMpIHsgcmV0dXJuICp0aGlzID0gKnRoaXMgLSByaHM7IH0KKyAgICBXVEZfRVhQT1JU
X1BSSVZBVEUgTWVkaWFUaW1lIG9wZXJhdG9yKyhjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3Q7
CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIE1lZGlhVGltZSBvcGVyYXRvci0oY29uc3QgTWVkaWFU
aW1lJiByaHMpIGNvbnN0OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBNZWRpYVRpbWUgb3BlcmF0
b3ItKCkgY29uc3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIE1lZGlhVGltZSBvcGVyYXRvcioo
aW50MzJfdCkgY29uc3Q7CisgICAgaW5saW5lIGJvb2wgb3BlcmF0b3I8KGNvbnN0IE1lZGlhVGlt
ZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJocykgPT0gTGVzc1RoYW47IH0KKyAgICBp
bmxpbmUgYm9vbCBvcGVyYXRvcj4oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJu
IGNvbXBhcmUocmhzKSA9PSBHcmVhdGVyVGhhbjsgfQorICAgIGlubGluZSBib29sIG9wZXJhdG9y
IT0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBhcmUocmhzKSAhPSBF
cXVhbFRvOyB9CisgICAgaW5saW5lIGJvb2wgb3BlcmF0b3I9PShjb25zdCBNZWRpYVRpbWUmIHJo
cykgY29uc3QgeyByZXR1cm4gY29tcGFyZShyaHMpID09IEVxdWFsVG87IH0KKyAgICBpbmxpbmUg
Ym9vbCBvcGVyYXRvcj49KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21w
YXJlKHJocykgPj0gRXF1YWxUbzsgfQorICAgIGlubGluZSBib29sIG9wZXJhdG9yPD0oY29uc3Qg
TWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBhcmUocmhzKSA8PSBFcXVhbFRvOyB9
CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIGJvb2wgb3BlcmF0b3IhKCkgY29uc3Q7CisgICAgV1RG
X0VYUE9SVF9QUklWQVRFIGV4cGxpY2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdDsKIAogICAgIHR5
cGVkZWYgZW51bSB7CiAgICAgICAgIExlc3NUaGFuID0gLTEsCkBAIC04NywzMSArODYsMzEgQEAg
cHVibGljOgogICAgICAgICBHcmVhdGVyVGhhbiA9IDEsCiAgICAgfSBDb21wYXJpc29uRmxhZ3M7
CiAKLSAgICBDb21wYXJpc29uRmxhZ3MgY29tcGFyZShjb25zdCBNZWRpYVRpbWUmIHJocykgY29u
c3Q7Ci0gICAgYm9vbCBpc0JldHdlZW4oY29uc3QgTWVkaWFUaW1lJiwgY29uc3QgTWVkaWFUaW1l
JikgY29uc3Q7Ci0KLSAgICBib29sIGlzVmFsaWQoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFn
cyAmIFZhbGlkOyB9Ci0gICAgYm9vbCBpc0ludmFsaWQoKSBjb25zdCB7IHJldHVybiAhaXNWYWxp
ZCgpOyB9Ci0gICAgYm9vbCBoYXNCZWVuUm91bmRlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZs
YWdzICYgSGFzQmVlblJvdW5kZWQ7IH0KLSAgICBib29sIGlzUG9zaXRpdmVJbmZpbml0ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgUG9zaXRpdmVJbmZpbml0ZTsgfQotICAgIGJvb2wg
aXNOZWdhdGl2ZUluZmluaXRlKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBOZWdhdGl2
ZUluZmluaXRlOyB9Ci0gICAgYm9vbCBpc0luZGVmaW5pdGUoKSBjb25zdCB7IHJldHVybiBtX3Rp
bWVGbGFncyAmIEluZGVmaW5pdGU7IH0KLSAgICBib29sIGhhc0RvdWJsZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV90aW1lRmxhZ3MgJiBEb3VibGVWYWx1ZTsgfQotICAgIHVpbnQ4X3QgdGltZUZs
YWdzKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3M7IH0KLQotICAgIHN0YXRpYyBjb25zdCBN
ZWRpYVRpbWUmIHplcm9UaW1lKCk7Ci0gICAgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgaW52YWxp
ZFRpbWUoKTsKLSAgICBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiBwb3NpdGl2ZUluZmluaXRlVGlt
ZSgpOwotICAgIHN0YXRpYyBjb25zdCBNZWRpYVRpbWUmIG5lZ2F0aXZlSW5maW5pdGVUaW1lKCk7
Ci0gICAgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgaW5kZWZpbml0ZVRpbWUoKTsKLQotICAgIGNv
bnN0IGludDY0X3QmIHRpbWVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZVZhbHVlOyB9Ci0g
ICAgY29uc3QgdWludDMyX3QmIHRpbWVTY2FsZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZVNjYWxl
OyB9Ci0KLSAgICB2b2lkIGR1bXAoUHJpbnRTdHJlYW0mIG91dCkgY29uc3Q7Ci0gICAgU3RyaW5n
IHRvU3RyaW5nKCkgY29uc3Q7Ci0gICAgU3RyaW5nIHRvSlNPTlN0cmluZygpIGNvbnN0OwotICAg
IFJlZjxKU09OOjpPYmplY3Q+IHRvSlNPTk9iamVjdCgpIGNvbnN0OworICAgIFdURl9FWFBPUlRf
UFJJVkFURSBDb21wYXJpc29uRmxhZ3MgY29tcGFyZShjb25zdCBNZWRpYVRpbWUmIHJocykgY29u
c3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIGJvb2wgaXNCZXR3ZWVuKGNvbnN0IE1lZGlhVGlt
ZSYsIGNvbnN0IE1lZGlhVGltZSYpIGNvbnN0OworCisgICAgaW5saW5lIGJvb2wgaXNWYWxpZCgp
IGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgVmFsaWQ7IH0KKyAgICBpbmxpbmUgYm9vbCBp
c0ludmFsaWQoKSBjb25zdCB7IHJldHVybiAhaXNWYWxpZCgpOyB9CisgICAgaW5saW5lIGJvb2wg
aGFzQmVlblJvdW5kZWQoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIEhhc0JlZW5Sb3Vu
ZGVkOyB9CisgICAgaW5saW5lIGJvb2wgaXNQb3NpdGl2ZUluZmluaXRlKCkgY29uc3QgeyByZXR1
cm4gbV90aW1lRmxhZ3MgJiBQb3NpdGl2ZUluZmluaXRlOyB9CisgICAgaW5saW5lIGJvb2wgaXNO
ZWdhdGl2ZUluZmluaXRlKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBOZWdhdGl2ZUlu
ZmluaXRlOyB9CisgICAgaW5saW5lIGJvb2wgaXNJbmRlZmluaXRlKCkgY29uc3QgeyByZXR1cm4g
bV90aW1lRmxhZ3MgJiBJbmRlZmluaXRlOyB9CisgICAgaW5saW5lIGJvb2wgaGFzRG91YmxlVmFs
dWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIERvdWJsZVZhbHVlOyB9CisgICAgaW5s
aW5lIHVpbnQ4X3QgdGltZUZsYWdzKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3M7IH0KKwor
ICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiB6ZXJvVGltZSgp
OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiBpbnZhbGlk
VGltZSgpOworICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiBw
b3NpdGl2ZUluZmluaXRlVGltZSgpOworICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgY29u
c3QgTWVkaWFUaW1lJiBuZWdhdGl2ZUluZmluaXRlVGltZSgpOworICAgIFdURl9FWFBPUlRfUFJJ
VkFURSBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiBpbmRlZmluaXRlVGltZSgpOworCisgICAgaW5s
aW5lIGNvbnN0IGludDY0X3QmIHRpbWVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZVZhbHVl
OyB9CisgICAgaW5saW5lIGNvbnN0IHVpbnQzMl90JiB0aW1lU2NhbGUoKSBjb25zdCB7IHJldHVy
biBtX3RpbWVTY2FsZTsgfQorCisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgZHVtcChQcmlu
dFN0cmVhbSYgb3V0KSBjb25zdDsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgU3RyaW5nIHRvU3Ry
aW5nKCkgY29uc3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIFN0cmluZyB0b0pTT05TdHJpbmco
KSBjb25zdDsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgUmVmPEpTT046Ok9iamVjdD4gdG9KU09O
T2JqZWN0KCkgY29uc3Q7CiAKICAgICAvLyBNYWtlIHRoZSBmb2xsb3dpbmcgY2FzdHMgZXJyb3Jz
OgogICAgIG9wZXJhdG9yIGRvdWJsZSgpIGNvbnN0ID0gZGVsZXRlOwpAQCAtMTIyLDcgKzEyMSw3
IEBAIHB1YmxpYzoKICAgICBmcmllbmQgV1RGX0VYUE9SVF9QUklWQVRFIE1lZGlhVGltZSBhYnMo
Y29uc3QgTWVkaWFUaW1lJiByaHMpOwogCiAgICAgc3RhdGljIGNvbnN0IHVpbnQzMl90IERlZmF1
bHRUaW1lU2NhbGUgPSAxMDAwMDAwMDsKLSAgICBzdGF0aWMgY29uc3QgdWludDMyX3QgTWF4aW11
bVRpbWVTY2FsZTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIGNvbnN0IHVpbnQzMl90
IE1heGltdW1UaW1lU2NhbGU7CiAKICAgICBlbnVtIGNsYXNzIFJvdW5kaW5nRmxhZ3MgewogICAg
ICAgICBIYWxmQXdheUZyb21aZXJvID0gMCwKQEAgLTEzMiw3ICsxMzEsNyBAQCBwdWJsaWM6CiAg
ICAgICAgIFRvd2FyZE5lZ2F0aXZlSW5maW5pdHksCiAgICAgfTsKIAotICAgIE1lZGlhVGltZSB0
b1RpbWVTY2FsZSh1aW50MzJfdCwgUm91bmRpbmdGbGFncyA9IFJvdW5kaW5nRmxhZ3M6OkhhbGZB
d2F5RnJvbVplcm8pIGNvbnN0OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBNZWRpYVRpbWUgdG9U
aW1lU2NhbGUodWludDMyX3QsIFJvdW5kaW5nRmxhZ3MgPSBSb3VuZGluZ0ZsYWdzOjpIYWxmQXdh
eUZyb21aZXJvKSBjb25zdDsKIAogICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5j
b2RlKEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMg
V0FSTl9VTlVTRURfUkVUVVJOIGJvb2wgZGVjb2RlKERlY29kZXImLCBNZWRpYVRpbWUmKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>414252</attachid>
            <date>2020-11-16 10:39:46 -0800</date>
            <delta_ts>2020-11-16 11:06:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218381-20201116103944.patch</filename>
            <type>text/plain</type>
            <size>9049</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5ODU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDY3MjBkOTc2MmM2MDU1OTA2ZWYxOTY0
NGZjNDMxMzA2Yjg1NDkwODQuLjc4YTEzNzliZDJiYWYwZGZmNWYxNDJmODkwYmIyN2VjZjYyZjc3
ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMjAtMTAtMzAgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFtXVEZdIENvZGluZyBzdHlsZSBpc3N1ZXMg
aW4gTWVkaWFUaW1lLmgKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIxODM4MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlbW92ZSB0aGUgY2xhc3MtbGV2ZWwgV1RGX0VYUE9SVF9QUklWQVRFIGRlY2xhcmF0
aW9uIGFuZCBtYXJrIG1vc3Qgb2YgdGhlIGV4cG9ydGVkCisgICAgICAgIGZ1bmN0aW9ucyBhcyBz
dWNoLCBvciBpbmxpbmUgZm9yIHRoZSBvbmVzIGRlZmluZWQgYXMgc3VjaC4KKworICAgICAgICAq
IHd0Zi9NZWRpYVRpbWUuY3BwOgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yKz0p
OgorICAgICAgICAoV1RGOjpNZWRpYVRpbWU6Om9wZXJhdG9yLT0pOgorICAgICAgICAoV1RGOjpN
ZWRpYVRpbWU6Om9wZXJhdG9yPCBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGltZTo6b3Bl
cmF0b3I+IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvciE9IGNvbnN0
KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAg
KFdURjo6TWVkaWFUaW1lOjpvcGVyYXRvcj49IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFU
aW1lOjpvcGVyYXRvcjw9IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc1ZhbGlk
IGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjppc0ludmFsaWQgY29uc3QpOgorICAg
ICAgICAoV1RGOjpNZWRpYVRpbWU6Omhhc0JlZW5Sb3VuZGVkIGNvbnN0KToKKyAgICAgICAgKFdU
Rjo6TWVkaWFUaW1lOjppc1Bvc2l0aXZlSW5maW5pdGUgY29uc3QpOgorICAgICAgICAoV1RGOjpN
ZWRpYVRpbWU6OmlzTmVnYXRpdmVJbmZpbml0ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlh
VGltZTo6aXNJbmRlZmluaXRlIGNvbnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjpoYXNE
b3VibGVWYWx1ZSBjb25zdCk6CisgICAgICAgIChXVEY6Ok1lZGlhVGltZTo6dGltZUZsYWdzIGNv
bnN0KToKKyAgICAgICAgKFdURjo6TWVkaWFUaW1lOjp0aW1lVmFsdWUgY29uc3QpOgorICAgICAg
ICAoV1RGOjpNZWRpYVRpbWU6OnRpbWVTY2FsZSBjb25zdCk6CisgICAgICAgICogd3RmL01lZGlh
VGltZS5oOgorCiAyMDIwLTExLTE2ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNv
bT4KIAogICAgICAgICBSZS1kaXNhYmxlIGFzeW5jIG92ZXJmbG93IHNjcm9sbGluZyBmb3IgVVNF
KE5JQ09TSUEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaCBiL1NvdXJj
ZS9XVEYvd3RmL01lZGlhVGltZS5oCmluZGV4IDk3MTExNjk3MmE4MDQ5YWIyZmYwYzI4OWVlMDEw
MGIzYzM2MmI4MWYuLjliYTQxYTQxMmM5NzNhOTg4ZTcxZDVjZDUwYTUzMTQ5NzZhYWI3YWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL01lZGlhVGltZS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L01lZGlhVGltZS5oCkBAIC0yOCwyMCArMjgsMTkgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNs
dWRlIDx3dGYvRmFzdE1hbGxvYy5oPgotI2luY2x1ZGUgPHd0Zi9KU09OVmFsdWVzLmg+Ci0jaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KICNpbmNsdWRlIDxjbWF0aD4KICNpbmNsdWRl
IDxsaW1pdHM+CiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CisjaW5jbHVkZSA8d3RmL0pTT05WYWx1ZXMuaD4KKyNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKIGNsYXNzIFBy
aW50U3RyZWFtOwogCi1jbGFzcyBXVEZfRVhQT1JUX1BSSVZBVEUgTWVkaWFUaW1lIGZpbmFsIHsK
K2NsYXNzIE1lZGlhVGltZSBmaW5hbCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBw
dWJsaWM6CiAgICAgZW51bSB7CkBAIC01MywzMyArNTIsMzMgQEAgcHVibGljOgogICAgICAgICBE
b3VibGVWYWx1ZSA9IDEgPDwgNSwKICAgICB9OwogCi0gICAgY29uc3RleHByIE1lZGlhVGltZSgp
OwotICAgIGNvbnN0ZXhwciBNZWRpYVRpbWUoaW50NjRfdCB2YWx1ZSwgdWludDMyX3Qgc2NhbGUs
IHVpbnQ4X3QgZmxhZ3MgPSBWYWxpZCk7Ci0gICAgTWVkaWFUaW1lKGNvbnN0IE1lZGlhVGltZSYg
cmhzKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgY29uc3RleHByIE1lZGlhVGltZSgpOworICAg
IFdURl9FWFBPUlRfUFJJVkFURSBjb25zdGV4cHIgTWVkaWFUaW1lKGludDY0X3QgdmFsdWUsIHVp
bnQzMl90IHNjYWxlLCB1aW50OF90IGZsYWdzID0gVmFsaWQpOworICAgIFdURl9FWFBPUlRfUFJJ
VkFURSBNZWRpYVRpbWUoY29uc3QgTWVkaWFUaW1lJiByaHMpOwogCi0gICAgc3RhdGljIE1lZGlh
VGltZSBjcmVhdGVXaXRoRmxvYXQoZmxvYXQgZmxvYXRUaW1lKTsKLSAgICBzdGF0aWMgTWVkaWFU
aW1lIGNyZWF0ZVdpdGhGbG9hdChmbG9hdCBmbG9hdFRpbWUsIHVpbnQzMl90IHRpbWVTY2FsZSk7
Ci0gICAgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRG91YmxlKGRvdWJsZSBkb3VibGVUaW1l
KTsKLSAgICBzdGF0aWMgTWVkaWFUaW1lIGNyZWF0ZVdpdGhEb3VibGUoZG91YmxlIGRvdWJsZVRp
bWUsIHVpbnQzMl90IHRpbWVTY2FsZSk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBN
ZWRpYVRpbWUgY3JlYXRlV2l0aEZsb2F0KGZsb2F0IGZsb2F0VGltZSk7CisgICAgV1RGX0VYUE9S
VF9QUklWQVRFIHN0YXRpYyBNZWRpYVRpbWUgY3JlYXRlV2l0aEZsb2F0KGZsb2F0IGZsb2F0VGlt
ZSwgdWludDMyX3QgdGltZVNjYWxlKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIE1l
ZGlhVGltZSBjcmVhdGVXaXRoRG91YmxlKGRvdWJsZSBkb3VibGVUaW1lKTsKKyAgICBXVEZfRVhQ
T1JUX1BSSVZBVEUgc3RhdGljIE1lZGlhVGltZSBjcmVhdGVXaXRoRG91YmxlKGRvdWJsZSBkb3Vi
bGVUaW1lLCB1aW50MzJfdCB0aW1lU2NhbGUpOwogCi0gICAgZmxvYXQgdG9GbG9hdCgpIGNvbnN0
OwotICAgIGRvdWJsZSB0b0RvdWJsZSgpIGNvbnN0OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBm
bG9hdCB0b0Zsb2F0KCkgY29uc3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIGRvdWJsZSB0b0Rv
dWJsZSgpIGNvbnN0OwogCi0gICAgTWVkaWFUaW1lJiBvcGVyYXRvcj0oY29uc3QgTWVkaWFUaW1l
JiByaHMpOworICAgIFdURl9FWFBPUlRfUFJJVkFURSBNZWRpYVRpbWUmIG9wZXJhdG9yPShjb25z
dCBNZWRpYVRpbWUmIHJocyk7CiAgICAgTWVkaWFUaW1lJiBvcGVyYXRvcis9KGNvbnN0IE1lZGlh
VGltZSYgcmhzKSB7IHJldHVybiAqdGhpcyA9ICp0aGlzICsgcmhzOyB9CiAgICAgTWVkaWFUaW1l
JiBvcGVyYXRvci09KGNvbnN0IE1lZGlhVGltZSYgcmhzKSB7IHJldHVybiAqdGhpcyA9ICp0aGlz
IC0gcmhzOyB9Ci0gICAgTWVkaWFUaW1lIG9wZXJhdG9yKyhjb25zdCBNZWRpYVRpbWUmIHJocykg
Y29uc3Q7Ci0gICAgTWVkaWFUaW1lIG9wZXJhdG9yLShjb25zdCBNZWRpYVRpbWUmIHJocykgY29u
c3Q7Ci0gICAgTWVkaWFUaW1lIG9wZXJhdG9yLSgpIGNvbnN0OwotICAgIE1lZGlhVGltZSBvcGVy
YXRvciooaW50MzJfdCkgY29uc3Q7Ci0gICAgYm9vbCBvcGVyYXRvcjwoY29uc3QgTWVkaWFUaW1l
JiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBhcmUocmhzKSA9PSBMZXNzVGhhbjsgfQotICAgIGJv
b2wgb3BlcmF0b3I+KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJl
KHJocykgPT0gR3JlYXRlclRoYW47IH0KLSAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgTWVkaWFU
aW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBhcmUocmhzKSAhPSBFcXVhbFRvOyB9Ci0gICAg
Ym9vbCBvcGVyYXRvcj09KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21w
YXJlKHJocykgPT0gRXF1YWxUbzsgfQotICAgIGJvb2wgb3BlcmF0b3I+PShjb25zdCBNZWRpYVRp
bWUmIHJocykgY29uc3QgeyByZXR1cm4gY29tcGFyZShyaHMpID49IEVxdWFsVG87IH0KLSAgICBi
b29sIG9wZXJhdG9yPD0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsgcmV0dXJuIGNvbXBh
cmUocmhzKSA8PSBFcXVhbFRvOyB9Ci0gICAgYm9vbCBvcGVyYXRvciEoKSBjb25zdDsKLSAgICBl
eHBsaWNpdCBvcGVyYXRvciBib29sKCkgY29uc3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIE1l
ZGlhVGltZSBvcGVyYXRvcisoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OworICAgIFdURl9F
WFBPUlRfUFJJVkFURSBNZWRpYVRpbWUgb3BlcmF0b3ItKGNvbnN0IE1lZGlhVGltZSYgcmhzKSBj
b25zdDsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgTWVkaWFUaW1lIG9wZXJhdG9yLSgpIGNvbnN0
OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBNZWRpYVRpbWUgb3BlcmF0b3IqKGludDMyX3QpIGNv
bnN0OworICAgIGlubGluZSBib29sIG9wZXJhdG9yPChjb25zdCBNZWRpYVRpbWUmIHJocykgY29u
c3QgeyByZXR1cm4gY29tcGFyZShyaHMpID09IExlc3NUaGFuOyB9CisgICAgaW5saW5lIGJvb2wg
b3BlcmF0b3I+KGNvbnN0IE1lZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJo
cykgPT0gR3JlYXRlclRoYW47IH0KKyAgICBpbmxpbmUgYm9vbCBvcGVyYXRvciE9KGNvbnN0IE1l
ZGlhVGltZSYgcmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJocykgIT0gRXF1YWxUbzsgfQor
ICAgIGlubGluZSBib29sIG9wZXJhdG9yPT0oY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0IHsg
cmV0dXJuIGNvbXBhcmUocmhzKSA9PSBFcXVhbFRvOyB9CisgICAgaW5saW5lIGJvb2wgb3BlcmF0
b3I+PShjb25zdCBNZWRpYVRpbWUmIHJocykgY29uc3QgeyByZXR1cm4gY29tcGFyZShyaHMpID49
IEVxdWFsVG87IH0KKyAgICBpbmxpbmUgYm9vbCBvcGVyYXRvcjw9KGNvbnN0IE1lZGlhVGltZSYg
cmhzKSBjb25zdCB7IHJldHVybiBjb21wYXJlKHJocykgPD0gRXF1YWxUbzsgfQorICAgIFdURl9F
WFBPUlRfUFJJVkFURSBib29sIG9wZXJhdG9yISgpIGNvbnN0OworICAgIFdURl9FWFBPUlRfUFJJ
VkFURSBleHBsaWNpdCBvcGVyYXRvciBib29sKCkgY29uc3Q7CiAKICAgICB0eXBlZGVmIGVudW0g
ewogICAgICAgICBMZXNzVGhhbiA9IC0xLApAQCAtODcsMzEgKzg2LDMxIEBAIHB1YmxpYzoKICAg
ICAgICAgR3JlYXRlclRoYW4gPSAxLAogICAgIH0gQ29tcGFyaXNvbkZsYWdzOwogCi0gICAgQ29t
cGFyaXNvbkZsYWdzIGNvbXBhcmUoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OwotICAgIGJv
b2wgaXNCZXR3ZWVuKGNvbnN0IE1lZGlhVGltZSYsIGNvbnN0IE1lZGlhVGltZSYpIGNvbnN0Owot
Ci0gICAgYm9vbCBpc1ZhbGlkKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBWYWxpZDsg
fQotICAgIGJvb2wgaXNJbnZhbGlkKCkgY29uc3QgeyByZXR1cm4gIWlzVmFsaWQoKTsgfQotICAg
IGJvb2wgaGFzQmVlblJvdW5kZWQoKSBjb25zdCB7IHJldHVybiBtX3RpbWVGbGFncyAmIEhhc0Jl
ZW5Sb3VuZGVkOyB9Ci0gICAgYm9vbCBpc1Bvc2l0aXZlSW5maW5pdGUoKSBjb25zdCB7IHJldHVy
biBtX3RpbWVGbGFncyAmIFBvc2l0aXZlSW5maW5pdGU7IH0KLSAgICBib29sIGlzTmVnYXRpdmVJ
bmZpbml0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgTmVnYXRpdmVJbmZpbml0ZTsg
fQotICAgIGJvb2wgaXNJbmRlZmluaXRlKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBJ
bmRlZmluaXRlOyB9Ci0gICAgYm9vbCBoYXNEb3VibGVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
dGltZUZsYWdzICYgRG91YmxlVmFsdWU7IH0KLSAgICB1aW50OF90IHRpbWVGbGFncygpIGNvbnN0
IHsgcmV0dXJuIG1fdGltZUZsYWdzOyB9Ci0KLSAgICBzdGF0aWMgY29uc3QgTWVkaWFUaW1lJiB6
ZXJvVGltZSgpOwotICAgIHN0YXRpYyBjb25zdCBNZWRpYVRpbWUmIGludmFsaWRUaW1lKCk7Ci0g
ICAgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgcG9zaXRpdmVJbmZpbml0ZVRpbWUoKTsKLSAgICBz
dGF0aWMgY29uc3QgTWVkaWFUaW1lJiBuZWdhdGl2ZUluZmluaXRlVGltZSgpOwotICAgIHN0YXRp
YyBjb25zdCBNZWRpYVRpbWUmIGluZGVmaW5pdGVUaW1lKCk7Ci0KLSAgICBjb25zdCBpbnQ2NF90
JiB0aW1lVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVWYWx1ZTsgfQotICAgIGNvbnN0IHVp
bnQzMl90JiB0aW1lU2NhbGUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVTY2FsZTsgfQotCi0gICAg
dm9pZCBkdW1wKFByaW50U3RyZWFtJiBvdXQpIGNvbnN0OwotICAgIFN0cmluZyB0b1N0cmluZygp
IGNvbnN0OwotICAgIFN0cmluZyB0b0pTT05TdHJpbmcoKSBjb25zdDsKLSAgICBSZWY8SlNPTjo6
T2JqZWN0PiB0b0pTT05PYmplY3QoKSBjb25zdDsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgQ29t
cGFyaXNvbkZsYWdzIGNvbXBhcmUoY29uc3QgTWVkaWFUaW1lJiByaHMpIGNvbnN0OworICAgIFdU
Rl9FWFBPUlRfUFJJVkFURSBib29sIGlzQmV0d2Vlbihjb25zdCBNZWRpYVRpbWUmLCBjb25zdCBN
ZWRpYVRpbWUmKSBjb25zdDsKKworICAgIGlubGluZSBib29sIGlzVmFsaWQoKSBjb25zdCB7IHJl
dHVybiBtX3RpbWVGbGFncyAmIFZhbGlkOyB9CisgICAgaW5saW5lIGJvb2wgaXNJbnZhbGlkKCkg
Y29uc3QgeyByZXR1cm4gIWlzVmFsaWQoKTsgfQorICAgIGlubGluZSBib29sIGhhc0JlZW5Sb3Vu
ZGVkKCkgY29uc3QgeyByZXR1cm4gbV90aW1lRmxhZ3MgJiBIYXNCZWVuUm91bmRlZDsgfQorICAg
IGlubGluZSBib29sIGlzUG9zaXRpdmVJbmZpbml0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZs
YWdzICYgUG9zaXRpdmVJbmZpbml0ZTsgfQorICAgIGlubGluZSBib29sIGlzTmVnYXRpdmVJbmZp
bml0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzICYgTmVnYXRpdmVJbmZpbml0ZTsgfQor
ICAgIGlubGluZSBib29sIGlzSW5kZWZpbml0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdz
ICYgSW5kZWZpbml0ZTsgfQorICAgIGlubGluZSBib29sIGhhc0RvdWJsZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV90aW1lRmxhZ3MgJiBEb3VibGVWYWx1ZTsgfQorICAgIGlubGluZSB1aW50OF90
IHRpbWVGbGFncygpIGNvbnN0IHsgcmV0dXJuIG1fdGltZUZsYWdzOyB9CisKKyAgICBXVEZfRVhQ
T1JUX1BSSVZBVEUgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgemVyb1RpbWUoKTsKKyAgICBXVEZf
RVhQT1JUX1BSSVZBVEUgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgaW52YWxpZFRpbWUoKTsKKyAg
ICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIGNvbnN0IE1lZGlhVGltZSYgcG9zaXRpdmVJbmZp
bml0ZVRpbWUoKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIGNvbnN0IE1lZGlhVGlt
ZSYgbmVnYXRpdmVJbmZpbml0ZVRpbWUoKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGlj
IGNvbnN0IE1lZGlhVGltZSYgaW5kZWZpbml0ZVRpbWUoKTsKKworICAgIGlubGluZSBjb25zdCBp
bnQ2NF90JiB0aW1lVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3RpbWVWYWx1ZTsgfQorICAgIGlu
bGluZSBjb25zdCB1aW50MzJfdCYgdGltZVNjYWxlKCkgY29uc3QgeyByZXR1cm4gbV90aW1lU2Nh
bGU7IH0KKworICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGR1bXAoUHJpbnRTdHJlYW0mIG91
dCkgY29uc3Q7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIFN0cmluZyB0b1N0cmluZygpIGNvbnN0
OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBTdHJpbmcgdG9KU09OU3RyaW5nKCkgY29uc3Q7Cisg
ICAgV1RGX0VYUE9SVF9QUklWQVRFIFJlZjxKU09OOjpPYmplY3Q+IHRvSlNPTk9iamVjdCgpIGNv
bnN0OwogCiAgICAgLy8gTWFrZSB0aGUgZm9sbG93aW5nIGNhc3RzIGVycm9yczoKICAgICBvcGVy
YXRvciBkb3VibGUoKSBjb25zdCA9IGRlbGV0ZTsKQEAgLTEyMiw3ICsxMjEsNyBAQCBwdWJsaWM6
CiAgICAgZnJpZW5kIFdURl9FWFBPUlRfUFJJVkFURSBNZWRpYVRpbWUgYWJzKGNvbnN0IE1lZGlh
VGltZSYgcmhzKTsKIAogICAgIHN0YXRpYyBjb25zdCB1aW50MzJfdCBEZWZhdWx0VGltZVNjYWxl
ID0gMTAwMDAwMDA7Ci0gICAgc3RhdGljIGNvbnN0IHVpbnQzMl90IE1heGltdW1UaW1lU2NhbGU7
CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBjb25zdCB1aW50MzJfdCBNYXhpbXVtVGlt
ZVNjYWxlOwogCiAgICAgZW51bSBjbGFzcyBSb3VuZGluZ0ZsYWdzIHsKICAgICAgICAgSGFsZkF3
YXlGcm9tWmVybyA9IDAsCkBAIC0xMzIsNyArMTMxLDcgQEAgcHVibGljOgogICAgICAgICBUb3dh
cmROZWdhdGl2ZUluZmluaXR5LAogICAgIH07CiAKLSAgICBNZWRpYVRpbWUgdG9UaW1lU2NhbGUo
dWludDMyX3QsIFJvdW5kaW5nRmxhZ3MgPSBSb3VuZGluZ0ZsYWdzOjpIYWxmQXdheUZyb21aZXJv
KSBjb25zdDsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUgTWVkaWFUaW1lIHRvVGltZVNjYWxlKHVp
bnQzMl90LCBSb3VuZGluZ0ZsYWdzID0gUm91bmRpbmdGbGFnczo6SGFsZkF3YXlGcm9tWmVybykg
Y29uc3Q7CiAKICAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVy
JikgY29uc3Q7CiAgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIFdBUk5fVU5VU0VE
X1JFVFVSTiBib29sIGRlY29kZShEZWNvZGVyJiwgTWVkaWFUaW1lJik7Cg==
</data>
<flag name="review"
          id="431072"
          type_id="1"
          status="+"
          setter="achristensen"
    />
    <flag name="commit-queue"
          id="431082"
          type_id="3"
          status="-"
          setter="achristensen"
    />
          </attachment>
      

    </bug>

</bugzilla>