<?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>232951</bug_id>
          
          <creation_ts>2021-11-10 10:12:36 -0800</creation_ts>
          <short_desc>Prevent fused multiply add during ParseInt</short_desc>
          <delta_ts>2021-11-14 00:46:20 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mikhail R. Gadelha">mikhail</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1813676</commentid>
    <comment_count>0</comment_count>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 10:12:36 -0800</bug_when>
    <thetext>Prevent fused multiply add during ParseInt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813684</commentid>
    <comment_count>1</comment_count>
      <attachid>443832</attachid>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 10:23:58 -0800</bug_when>
    <thetext>Created attachment 443832
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813685</commentid>
    <comment_count>2</comment_count>
      <attachid>443833</attachid>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 10:25:44 -0800</bug_when>
    <thetext>Created attachment 443833
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813703</commentid>
    <comment_count>3</comment_count>
      <attachid>443833</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-11-10 10:51:29 -0800</bug_when>
    <thetext>Comment on attachment 443833
Patch

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

Commented.

&gt; Source/JavaScriptCore/ChangeLog:18
&gt; +        When parsing the string in parseInt, a compiler can wrongfully generate
&gt; +        a fused multiply-add instruction, causing the conversion to be wrong
&gt; +        for some high values. An add followed by a multiply gives the correct
&gt; +        result and it is the code generated most of the times.
&gt; +
&gt; +        This patch adds a volatile qualifier to the number variable, so the
&gt; +        compiler doesn&apos;t try to optimize it, and enables a failing test on
&gt; +        mips.
&gt; +
&gt; +        The issue was found when cross compiling to mips with gcc 8.4.0 and
&gt; +        options -ffp-contract=off -mmadd4.

This is GCC issue, and we should not use `volatile` here. We should disable GCC&apos;s this optimization for this function via pragma etc.
https://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Function-Specific-Option-Pragmas.html#Function-Specific-Option-Pragmas
https://stackoverflow.com/questions/34436233/fused-multiply-add-and-default-rounding-modes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813709</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 11:07:18 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #3)
&gt; Comment on attachment 443833 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=443833&amp;action=review
&gt; 
&gt; Commented.
&gt; 
&gt; &gt; Source/JavaScriptCore/ChangeLog:18
&gt; &gt; +        When parsing the string in parseInt, a compiler can wrongfully generate
&gt; &gt; +        a fused multiply-add instruction, causing the conversion to be wrong
&gt; &gt; +        for some high values. An add followed by a multiply gives the correct
&gt; &gt; +        result and it is the code generated most of the times.
&gt; &gt; +
&gt; &gt; +        This patch adds a volatile qualifier to the number variable, so the
&gt; &gt; +        compiler doesn&apos;t try to optimize it, and enables a failing test on
&gt; &gt; +        mips.
&gt; &gt; +
&gt; &gt; +        The issue was found when cross compiling to mips with gcc 8.4.0 and
&gt; &gt; +        options -ffp-contract=off -mmadd4.
&gt; 
&gt; This is GCC issue, and we should not use `volatile` here. We should disable
&gt; GCC&apos;s this optimization for this function via pragma etc.
&gt; https://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Function-Specific-Option-
&gt; Pragmas.html#Function-Specific-Option-Pragmas
&gt; https://stackoverflow.com/questions/34436233/fused-multiply-add-and-default-
&gt; rounding-modes

But these pragmas disable optimization for the whole function. Are you sure we should disable optimization for the whole function? I also tried to use `#pragma STDC FP_CONTRACT` but gcc doesn&apos;t seem to accept it yet: https://stackoverflow.com/questions/43352510/difference-in-gcc-ffp-contract-options

On other platforms that I tested, the compilers already generate an unfused multiply-add, so we don&apos;t seem to be generating worse code either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813714</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-11-10 11:16:43 -0800</bug_when>
    <thetext>(In reply to Mikhail R. Gadelha from comment #4)
&gt; (In reply to Yusuke Suzuki from comment #3)
&gt; &gt; Comment on attachment 443833 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=443833&amp;action=review
&gt; &gt; 
&gt; &gt; Commented.
&gt; &gt; 
&gt; &gt; &gt; Source/JavaScriptCore/ChangeLog:18
&gt; &gt; &gt; +        When parsing the string in parseInt, a compiler can wrongfully generate
&gt; &gt; &gt; +        a fused multiply-add instruction, causing the conversion to be wrong
&gt; &gt; &gt; +        for some high values. An add followed by a multiply gives the correct
&gt; &gt; &gt; +        result and it is the code generated most of the times.
&gt; &gt; &gt; +
&gt; &gt; &gt; +        This patch adds a volatile qualifier to the number variable, so the
&gt; &gt; &gt; +        compiler doesn&apos;t try to optimize it, and enables a failing test on
&gt; &gt; &gt; +        mips.
&gt; &gt; &gt; +
&gt; &gt; &gt; +        The issue was found when cross compiling to mips with gcc 8.4.0 and
&gt; &gt; &gt; +        options -ffp-contract=off -mmadd4.
&gt; &gt; 
&gt; &gt; This is GCC issue, and we should not use `volatile` here. We should disable
&gt; &gt; GCC&apos;s this optimization for this function via pragma etc.
&gt; &gt; https://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Function-Specific-Option-
&gt; &gt; Pragmas.html#Function-Specific-Option-Pragmas
&gt; &gt; https://stackoverflow.com/questions/34436233/fused-multiply-add-and-default-
&gt; &gt; rounding-modes
&gt; 
&gt; But these pragmas disable optimization for the whole function. Are you sure
&gt; we should disable optimization for the whole function?

Yes, we should disable fused multiply add in this function.
Using `optimize` function attribute can enforce fp-contract option to this function, I think.

&gt; I also tried to use
&gt; `#pragma STDC FP_CONTRACT` but gcc doesn&apos;t seem to accept it yet:
&gt; https://stackoverflow.com/questions/43352510/difference-in-gcc-ffp-contract-
&gt; options
&gt; 
&gt; On other platforms that I tested, the compilers already generate an unfused
&gt; multiply-add, so we don&apos;t seem to be generating worse code either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813724</commentid>
    <comment_count>6</comment_count>
      <attachid>443839</attachid>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 11:31:36 -0800</bug_when>
    <thetext>Created attachment 443839
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813738</commentid>
    <comment_count>7</comment_count>
      <attachid>443839</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-11-10 11:56:30 -0800</bug_when>
    <thetext>Comment on attachment 443839
Patch

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

&gt; Source/JavaScriptCore/runtime/ParseInt.h:113
&gt; +// Due to a GCC bug found in v8.4.0, a wrong fused multiply-add optimization can be inserted when calculating the final number,
&gt; +// in number *= radix; number += digit;, so optimizations are disabled for this functions.
&gt; +#pragma GCC push_options
&gt; +#pragma GCC optimize (&quot;O0&quot;)

1. Why not only disabling fp-contract? We do not need to disable all optimizations. (See comment https://bugs.webkit.org/show_bug.cgi?id=232951#c5)
2. Why not using function attribute?
3. Use it only for GCC. Clang does not need this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813740</commentid>
    <comment_count>8</comment_count>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 12:08:10 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #7)
&gt; Comment on attachment 443839 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=443839&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/runtime/ParseInt.h:113
&gt; &gt; +// Due to a GCC bug found in v8.4.0, a wrong fused multiply-add optimization can be inserted when calculating the final number,
&gt; &gt; +// in number *= radix; number += digit;, so optimizations are disabled for this functions.
&gt; &gt; +#pragma GCC push_options
&gt; &gt; +#pragma GCC optimize (&quot;O0&quot;)
&gt; 
&gt; 1. Why not only disabling fp-contract? We do not need to disable all
&gt; optimizations. (See comment
&gt; https://bugs.webkit.org/show_bug.cgi?id=232951#c5)
&gt; 2. Why not using function attribute?

I just tried adding `__attribute__((optimize(&quot;fp-contract=off&quot;)))` locally to the function definition and gcc seems to ignore it, i.e., it generates de fma and the test fails.

&gt; 3. Use it only for GCC. Clang does not need this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813817</commentid>
    <comment_count>9</comment_count>
      <attachid>443839</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-11-10 15:32:44 -0800</bug_when>
    <thetext>Comment on attachment 443839
Patch

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

&gt;&gt;&gt; Source/JavaScriptCore/runtime/ParseInt.h:113
&gt;&gt;&gt; +#pragma GCC optimize (&quot;O0&quot;)
&gt;&gt; 
&gt;&gt; 1. Why not only disabling fp-contract? We do not need to disable all optimizations. (See comment https://bugs.webkit.org/show_bug.cgi?id=232951#c5)
&gt;&gt; 2. Why not using function attribute?
&gt;&gt; 3. Use it only for GCC. Clang does not need this.
&gt; 
&gt; I just tried adding `__attribute__((optimize(&quot;fp-contract=off&quot;)))` locally to the function definition and gcc seems to ignore it, i.e., it generates de fma and the test fails.

Did you try `GCC optimize` pragma and &quot;fp-contract=off&quot; combination?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1813853</commentid>
    <comment_count>10</comment_count>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-10 17:19:24 -0800</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #9)
&gt; Comment on attachment 443839 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=443839&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/JavaScriptCore/runtime/ParseInt.h:113
&gt; &gt;&gt;&gt; +#pragma GCC optimize (&quot;O0&quot;)
&gt; &gt;&gt; 
&gt; &gt;&gt; 1. Why not only disabling fp-contract? We do not need to disable all optimizations. (See comment https://bugs.webkit.org/show_bug.cgi?id=232951#c5)
&gt; &gt;&gt; 2. Why not using function attribute?
&gt; &gt;&gt; 3. Use it only for GCC. Clang does not need this.
&gt; &gt; 
&gt; &gt; I just tried adding `__attribute__((optimize(&quot;fp-contract=off&quot;)))` locally to the function definition and gcc seems to ignore it, i.e., it generates de fma and the test fails.
&gt; 
&gt; Did you try `GCC optimize` pragma and &quot;fp-contract=off&quot; combination?

yep, I&apos;m passing `-ffp-contract=off` in the command line and tried it with both `__attribute__((optimize(&quot;fp-contract=off&quot;)))` and `__attribute__((optimize(&quot;-ffp-contract=off&quot;)))`. Neither worked.

Maybe it&apos;s not working because of the inline attribute? gcc seems to be gracefully ignoring the attribute.

I only got it to work it either the `volatile` or `__attribute__((optimize(&quot;O0&quot;)))`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814344</commentid>
    <comment_count>11</comment_count>
      <attachid>443839</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-11-11 21:12:12 -0800</bug_when>
    <thetext>Comment on attachment 443839
Patch

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

&gt;&gt;&gt;&gt;&gt; Source/JavaScriptCore/runtime/ParseInt.h:113
&gt;&gt;&gt;&gt;&gt; +#pragma GCC optimize (&quot;O0&quot;)
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; 1. Why not only disabling fp-contract? We do not need to disable all optimizations. (See comment https://bugs.webkit.org/show_bug.cgi?id=232951#c5)
&gt;&gt;&gt;&gt; 2. Why not using function attribute?
&gt;&gt;&gt;&gt; 3. Use it only for GCC. Clang does not need this.
&gt;&gt;&gt; 
&gt;&gt;&gt; I just tried adding `__attribute__((optimize(&quot;fp-contract=off&quot;)))` locally to the function definition and gcc seems to ignore it, i.e., it generates de fma and the test fails.
&gt;&gt; 
&gt;&gt; Did you try `GCC optimize` pragma and &quot;fp-contract=off&quot; combination?
&gt; 
&gt; yep, I&apos;m passing `-ffp-contract=off` in the command line and tried it with both `__attribute__((optimize(&quot;fp-contract=off&quot;)))` and `__attribute__((optimize(&quot;-ffp-contract=off&quot;)))`. Neither worked.
&gt; 
&gt; Maybe it&apos;s not working because of the inline attribute? gcc seems to be gracefully ignoring the attribute.
&gt; 
&gt; I only got it to work it either the `volatile` or `__attribute__((optimize(&quot;O0&quot;)))`.

OK, so at this point, I think the best way is annotating this double with `volatile` *only when it is GCC*. Can you change it? And can you describe the above reasoning in the ChangeLog? (e.g. optimize attribute didn&apos;t work etc.).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814404</commentid>
    <comment_count>12</comment_count>
      <attachid>444060</attachid>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-12 05:36:17 -0800</bug_when>
    <thetext>Created attachment 444060
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814745</commentid>
    <comment_count>13</comment_count>
      <attachid>444136</attachid>
    <who name="Mikhail R. Gadelha">mikhail</who>
    <bug_when>2021-11-13 05:28:35 -0800</bug_when>
    <thetext>Created attachment 444136
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814842</commentid>
    <comment_count>14</comment_count>
      <attachid>444136</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-11-14 00:23:53 -0800</bug_when>
    <thetext>Comment on attachment 444136
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814843</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-11-14 00:45:51 -0800</bug_when>
    <thetext>Committed r285788 (244232@main): &lt;https://commits.webkit.org/244232@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 444136.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1814844</commentid>
    <comment_count>16</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-14 00:46:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/85384001&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443832</attachid>
            <date>2021-11-10 10:23:58 -0800</date>
            <delta_ts>2021-11-10 10:25:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232951-20211110182357.patch</filename>
            <type>text/plain</type>
            <size>4167</size>
            <attacher name="Mikhail R. Gadelha">mikhail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
MTJjYjM0NzU4NTc2NDdhOWNhNTgyMWIxYzIyZjdkNGI5NDZmMjM0Li41MTI2ZjhiNjkzOGMxMmVm
NjUwMGJmNGIyZGFkZTQyOTk3MzY0NGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAyMS0xMS0xMCAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFByZXZlbnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJz
ZUludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMy
OTUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hl
biBwYXJzaW5nIHRoZSBzdHJpbmcgaW4gcGFyc2VJbnQsIGEgY29tcGlsZXIgY2FuIHdyb25nZnVs
bHkgZ2VuZXJhdGUKKyAgICAgICAgYSBmdXNlZCBtdWx0aXBseS1hZGQgaW5zdHJ1Y3Rpb24sIGNh
dXNpbmcgdGhlIGNvbnZlcnNpb24gdG8gYmUgd3JvbmcKKyAgICAgICAgZm9yIHNvbWUgaGlnaCB2
YWx1ZXMuIEFuIGFkZCBmb2xsb3dlZCBieSBhIG11bHRpcGx5IGdpdmVzIHRoZSBjb3JyZWN0Cisg
ICAgICAgIHJlc3VsdCBhbmQgaXQgaXMgdGhlIGNvZGUgZ2VuZXJhdGVkIG1vc3Qgb2YgdGhlIHRp
bWVzLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIHZvbGF0aWxlIHF1YWxpZmllciB0byB0
aGUgbnVtYmVyIHZhcmlhYmxlLCBzbyB0aGUKKyAgICAgICAgY29tcGlsZXIgZG9lc24ndCB0cnkg
dG8gb3B0aW1pemUgaXQsIGFuZCBlbmFibGVzIGEgZmFpbGluZyB0ZXN0IG9uCisgICAgICAgIG1p
cHMuCisKKyAgICAgICAgVGhlIGlzc3VlIHdhcyBmb3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0
byBtaXBzIHdpdGggZ2NjIDguNC4wIGFuZAorICAgICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9
b2ZmIC1tbWFkZDQuCisKKyAgICAgICAgKiBydW50aW1lL1BhcnNlSW50Lmg6CisgICAgICAgIChK
U0M6OnBhcnNlSW50KToKKwogMjAyMS0xMS0wOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVl
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyODUyNDYuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUludC5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUGFyc2VJbnQuaAppbmRleCAyOGE5MGE2YzJiYjE5
ZjliZDE3ZTA3YTczMTVjZDJmYjJlZmUxMzFlLi5hYTQxYzljYzEzMWQwMzRhM2JmZDE3NmJhYjE0
OTE3YzZhODY0OGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Q
YXJzZUludC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1BhcnNlSW50LmgK
QEAgLTE2MiwxMiArMTYyLDE1IEBAIHN0YXRpYyBkb3VibGUgcGFyc2VJbnQoU3RyaW5nVmlldyBz
LCBjb25zdCBDaGFyVHlwZSogZGF0YSwgaW50IHJhZGl4KQogICAgIC8vIDE0LiBMZXQgbnVtYmVy
IGJlIHRoZSBOdW1iZXIgdmFsdWUgZm9yIG1hdGhJbnQuCiAgICAgaW50IGZpcnN0RGlnaXRQb3Np
dGlvbiA9IHA7CiAgICAgYm9vbCBzYXdEaWdpdCA9IGZhbHNlOwotICAgIGRvdWJsZSBudW1iZXIg
PSAwOworCisgICAgLy8gU29tZSBjb21waWxlciBtaWdodCBpbnRyb2R1Y2UgYSB3cm9uZyBvcHRp
bWl6YXRpb24gKHNlZSBiZWxvdyksIHdlIGFkZCBhIHZvbGF0aWxlIHF1YWxpZmllciB0byBwcmV2
ZW50IG9wdGltaXphdGlvbnMuCisgICAgdm9sYXRpbGUgZG91YmxlIG51bWJlciA9IDA7CiAgICAg
d2hpbGUgKHAgPCBsZW5ndGgpIHsKICAgICAgICAgaW50IGRpZ2l0ID0gcGFyc2VEaWdpdChkYXRh
W3BdLCByYWRpeCk7CiAgICAgICAgIGlmIChkaWdpdCA9PSAtMSkKICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICBzYXdEaWdpdCA9IHRydWU7CisgICAgICAgIC8vIEEgY29tcGlsZXIgbWF5IGRl
Y2lkZSB0byB3cm9uZ2Z1bGx5IGZ1c2UgdGhlIGZvbGxvd2luZyB0d28gbGluZXMgaW50byBhIGZ1
c2VkIG11bHRpcGx5LWFkZC4KICAgICAgICAgbnVtYmVyICo9IHJhZGl4OwogICAgICAgICBudW1i
ZXIgKz0gZGlnaXQ7CiAgICAgICAgICsrcDsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hha3JhQ29y
ZS55YW1sIGIvSlNUZXN0cy9DaGFrcmFDb3JlLnlhbWwKaW5kZXggNzRhYTE1YzY1MTY5ODdhNTFj
MWNlYzg3NDFlMGJjYmZmNTUxOTQ2ZC4uMzg2MDYzODI1ZTlmODBmZTJhYWVjOWRjN2Y5MTdlYmM5
NzMwZDQ2MiAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFrcmFDb3JlLnlhbWwKKysrIGIvSlNUZXN0
cy9DaGFrcmFDb3JlLnlhbWwKQEAgLTY5NiwxMiArNjk2LDcgQEAKICAgICAgIGVuZAogLSBwYXRo
OiBDaGFrcmFDb3JlL3Rlc3QvR2xvYmFsRnVuY3Rpb25zL1BhcnNlSW50MS5qcwogICAjIEN1cnJl
bnRseSBmYWlscyBvbiB0aGUgTG9vbmdzb24gM0E0MDAwIChpbiAzMi1iaXRzIG1vZGUpLgotICBj
bWQ6IHwKLSAgICBpZiAkYXJjaGl0ZWN0dXJlID09ICJtaXBzIgotICAgICAgc2tpcAotICAgIGVs
c2UKLSAgICAgIHJ1bkNoYWtyYSA6YmFzZWxpbmUsICJOb0V4Y2VwdGlvbiIsICJQYXJzZUludDEu
YmFzZWxpbmUiLCBbXQotICAgIGVuZAorICBjbWQ6IHJ1bkNoYWtyYSA6YmFzZWxpbmUsICJOb0V4
Y2VwdGlvbiIsICJQYXJzZUludDEuYmFzZWxpbmUiLCBbXQogLSBwYXRoOiBDaGFrcmFDb3JlL3Rl
c3QvR2xvYmFsRnVuY3Rpb25zL3RvU3RyaW5nLmpzCiAgIGNtZDogcnVuQ2hha3JhIDpiYXNlbGlu
ZSwgIk5vRXhjZXB0aW9uIiwgInRvU3RyaW5nLmJhc2VsaW5lIiwgW10KIC0gcGF0aDogQ2hha3Jh
Q29yZS90ZXN0L0lubGluZUNhY2hlcy90MC5qcwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VM
b2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBkNDkwYzRiYTQ2MDYzZjIyOGNiYjc3YjIzMTg1
MzE2OGE5ZjhjMjU1Li4yMjBiNDFhYmI0MjY5ZGY5NTFjYTBhNmU3MjU4YzI1OGQwNTZkZTQxIDEw
MDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDI0IEBACisyMDIxLTExLTEwICBNaWtoYWlsIFIuIEdhZGVsaGEgIDxtaWtoYWlsQGln
YWxpYS5jb20+CisKKyAgICAgICAgUHJldmVudCBmdXNlZCBtdWx0aXBseSBhZGQgZHVyaW5nIFBh
cnNlSW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MzI5NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBX
aGVuIHBhcnNpbmcgdGhlIHN0cmluZyBpbiBwYXJzZUludCwgYSBjb21waWxlciBjYW4gd3Jvbmdm
dWxseSBnZW5lcmF0ZQorICAgICAgICBhIGZ1c2VkIG11bHRpcGx5LWFkZCBpbnN0cnVjdGlvbiwg
Y2F1c2luZyB0aGUgY29udmVyc2lvbiB0byBiZSB3cm9uZworICAgICAgICBmb3Igc29tZSBoaWdo
IHZhbHVlcy4gQW4gYWRkIGZvbGxvd2VkIGJ5IGEgbXVsdGlwbHkgZ2l2ZXMgdGhlIGNvcnJlY3QK
KyAgICAgICAgcmVzdWx0IGFuZCBpdCBpcyB0aGUgY29kZSBnZW5lcmF0ZWQgbW9zdCBvZiB0aGUg
dGltZXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgdm9sYXRpbGUgcXVhbGlmaWVyIHRv
IHRoZSBudW1iZXIgdmFyaWFibGUsIHNvIHRoZQorICAgICAgICBjb21waWxlciBkb2Vzbid0IHRy
eSB0byBvcHRpbWl6ZSBpdCwgYW5kIGVuYWJsZXMgYSBmYWlsaW5nIHRlc3Qgb24gCisgICAgICAg
IG1pcHMuCisKKyAgICAgICAgVGhlIGlzc3VlIHdhcyBmb3VuZCB3aGVuIGNyb3NzIGNvbXBpbGlu
ZyB0byBtaXBzIHdpdGggZ2NjIDguNC4wIGFuZAorICAgICAgICBvcHRpb25zIC1mZnAtY29udHJh
Y3Q9b2ZmIC1tbWFkZDQuCisKKyAgICAgICAgKiBDaGFrcmFDb3JlLnlhbWw6CisKIDIwMjEtMTEt
MTAgIFhhbiBMb3BleiAgPHhhbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdWzMyYml0XSBV
bnNraXAgSlNUZXN0cy9zdHJlc3MvanNvbi1zdHJpbmdpZnktc3RyaW5nLWJ1aWxkZXItb3ZlcmZs
b3cuanMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443833</attachid>
            <date>2021-11-10 10:25:44 -0800</date>
            <delta_ts>2021-11-10 11:31:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232951-20211110182543.patch</filename>
            <type>text/plain</type>
            <size>4166</size>
            <attacher name="Mikhail R. Gadelha">mikhail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
MTJjYjM0NzU4NTc2NDdhOWNhNTgyMWIxYzIyZjdkNGI5NDZmMjM0Li41MTI2ZjhiNjkzOGMxMmVm
NjUwMGJmNGIyZGFkZTQyOTk3MzY0NGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAyMS0xMS0xMCAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFByZXZlbnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJz
ZUludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMy
OTUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hl
biBwYXJzaW5nIHRoZSBzdHJpbmcgaW4gcGFyc2VJbnQsIGEgY29tcGlsZXIgY2FuIHdyb25nZnVs
bHkgZ2VuZXJhdGUKKyAgICAgICAgYSBmdXNlZCBtdWx0aXBseS1hZGQgaW5zdHJ1Y3Rpb24sIGNh
dXNpbmcgdGhlIGNvbnZlcnNpb24gdG8gYmUgd3JvbmcKKyAgICAgICAgZm9yIHNvbWUgaGlnaCB2
YWx1ZXMuIEFuIGFkZCBmb2xsb3dlZCBieSBhIG11bHRpcGx5IGdpdmVzIHRoZSBjb3JyZWN0Cisg
ICAgICAgIHJlc3VsdCBhbmQgaXQgaXMgdGhlIGNvZGUgZ2VuZXJhdGVkIG1vc3Qgb2YgdGhlIHRp
bWVzLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIHZvbGF0aWxlIHF1YWxpZmllciB0byB0
aGUgbnVtYmVyIHZhcmlhYmxlLCBzbyB0aGUKKyAgICAgICAgY29tcGlsZXIgZG9lc24ndCB0cnkg
dG8gb3B0aW1pemUgaXQsIGFuZCBlbmFibGVzIGEgZmFpbGluZyB0ZXN0IG9uCisgICAgICAgIG1p
cHMuCisKKyAgICAgICAgVGhlIGlzc3VlIHdhcyBmb3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0
byBtaXBzIHdpdGggZ2NjIDguNC4wIGFuZAorICAgICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9
b2ZmIC1tbWFkZDQuCisKKyAgICAgICAgKiBydW50aW1lL1BhcnNlSW50Lmg6CisgICAgICAgIChK
U0M6OnBhcnNlSW50KToKKwogMjAyMS0xMS0wOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVl
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyODUyNDYuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUludC5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUGFyc2VJbnQuaAppbmRleCAyOGE5MGE2YzJiYjE5
ZjliZDE3ZTA3YTczMTVjZDJmYjJlZmUxMzFlLi5iNDA0ZGM0ZmUzZjk2NWQ4YzBjMmY1ZGMzNzRm
ZjU0N2Y5NTBlNzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Q
YXJzZUludC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1BhcnNlSW50LmgK
QEAgLTE2MiwxMiArMTYyLDE1IEBAIHN0YXRpYyBkb3VibGUgcGFyc2VJbnQoU3RyaW5nVmlldyBz
LCBjb25zdCBDaGFyVHlwZSogZGF0YSwgaW50IHJhZGl4KQogICAgIC8vIDE0LiBMZXQgbnVtYmVy
IGJlIHRoZSBOdW1iZXIgdmFsdWUgZm9yIG1hdGhJbnQuCiAgICAgaW50IGZpcnN0RGlnaXRQb3Np
dGlvbiA9IHA7CiAgICAgYm9vbCBzYXdEaWdpdCA9IGZhbHNlOwotICAgIGRvdWJsZSBudW1iZXIg
PSAwOworCisgICAgLy8gQSBjb21waWxlciBtaWdodCBpbnRyb2R1Y2UgYSB3cm9uZyBvcHRpbWl6
YXRpb24gKHNlZSBiZWxvdyksIHdlIGFkZCBhIHZvbGF0aWxlIHF1YWxpZmllciB0byBwcmV2ZW50
IG9wdGltaXphdGlvbnMuCisgICAgdm9sYXRpbGUgZG91YmxlIG51bWJlciA9IDA7CiAgICAgd2hp
bGUgKHAgPCBsZW5ndGgpIHsKICAgICAgICAgaW50IGRpZ2l0ID0gcGFyc2VEaWdpdChkYXRhW3Bd
LCByYWRpeCk7CiAgICAgICAgIGlmIChkaWdpdCA9PSAtMSkKICAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICBzYXdEaWdpdCA9IHRydWU7CisgICAgICAgIC8vIEEgY29tcGlsZXIgbWF5IGRlY2lk
ZSB0byAod3JvbmdmdWxseSkgZnVzZSB0aGUgZm9sbG93aW5nIHR3byBsaW5lcyBpbnRvIGEgZnVz
ZWQgbXVsdGlwbHktYWRkLgogICAgICAgICBudW1iZXIgKj0gcmFkaXg7CiAgICAgICAgIG51bWJl
ciArPSBkaWdpdDsKICAgICAgICAgKytwOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFrcmFDb3Jl
LnlhbWwgYi9KU1Rlc3RzL0NoYWtyYUNvcmUueWFtbAppbmRleCA3NGFhMTVjNjUxNjk4N2E1MWMx
Y2VjODc0MWUwYmNiZmY1NTE5NDZkLi4zODYwNjM4MjVlOWY4MGZlMmFhZWM5ZGM3ZjkxN2ViYzk3
MzBkNDYyIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYWtyYUNvcmUueWFtbAorKysgYi9KU1Rlc3Rz
L0NoYWtyYUNvcmUueWFtbApAQCAtNjk2LDEyICs2OTYsNyBAQAogICAgICAgZW5kCiAtIHBhdGg6
IENoYWtyYUNvcmUvdGVzdC9HbG9iYWxGdW5jdGlvbnMvUGFyc2VJbnQxLmpzCiAgICMgQ3VycmVu
dGx5IGZhaWxzIG9uIHRoZSBMb29uZ3NvbiAzQTQwMDAgKGluIDMyLWJpdHMgbW9kZSkuCi0gIGNt
ZDogfAotICAgIGlmICRhcmNoaXRlY3R1cmUgPT0gIm1pcHMiCi0gICAgICBza2lwCi0gICAgZWxz
ZQotICAgICAgcnVuQ2hha3JhIDpiYXNlbGluZSwgIk5vRXhjZXB0aW9uIiwgIlBhcnNlSW50MS5i
YXNlbGluZSIsIFtdCi0gICAgZW5kCisgIGNtZDogcnVuQ2hha3JhIDpiYXNlbGluZSwgIk5vRXhj
ZXB0aW9uIiwgIlBhcnNlSW50MS5iYXNlbGluZSIsIFtdCiAtIHBhdGg6IENoYWtyYUNvcmUvdGVz
dC9HbG9iYWxGdW5jdGlvbnMvdG9TdHJpbmcuanMKICAgY21kOiBydW5DaGFrcmEgOmJhc2VsaW5l
LCAiTm9FeGNlcHRpb24iLCAidG9TdHJpbmcuYmFzZWxpbmUiLCBbXQogLSBwYXRoOiBDaGFrcmFD
b3JlL3Rlc3QvSW5saW5lQ2FjaGVzL3QwLmpzCmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxv
ZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IGQ0OTBjNGJhNDYwNjNmMjI4Y2JiNzdiMjMxODUz
MTY4YTlmOGMyNTUuLjIyMGI0MWFiYjQyNjlkZjk1MWNhMGE2ZTcyNThjMjU4ZDA1NmRlNDEgMTAw
NjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjQgQEAKKzIwMjEtMTEtMTAgIE1pa2hhaWwgUi4gR2FkZWxoYSAgPG1pa2hhaWxAaWdh
bGlhLmNvbT4KKworICAgICAgICBQcmV2ZW50IGZ1c2VkIG11bHRpcGx5IGFkZCBkdXJpbmcgUGFy
c2VJbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIz
Mjk1MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdo
ZW4gcGFyc2luZyB0aGUgc3RyaW5nIGluIHBhcnNlSW50LCBhIGNvbXBpbGVyIGNhbiB3cm9uZ2Z1
bGx5IGdlbmVyYXRlCisgICAgICAgIGEgZnVzZWQgbXVsdGlwbHktYWRkIGluc3RydWN0aW9uLCBj
YXVzaW5nIHRoZSBjb252ZXJzaW9uIHRvIGJlIHdyb25nCisgICAgICAgIGZvciBzb21lIGhpZ2gg
dmFsdWVzLiBBbiBhZGQgZm9sbG93ZWQgYnkgYSBtdWx0aXBseSBnaXZlcyB0aGUgY29ycmVjdAor
ICAgICAgICByZXN1bHQgYW5kIGl0IGlzIHRoZSBjb2RlIGdlbmVyYXRlZCBtb3N0IG9mIHRoZSB0
aW1lcy4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgYSB2b2xhdGlsZSBxdWFsaWZpZXIgdG8g
dGhlIG51bWJlciB2YXJpYWJsZSwgc28gdGhlCisgICAgICAgIGNvbXBpbGVyIGRvZXNuJ3QgdHJ5
IHRvIG9wdGltaXplIGl0LCBhbmQgZW5hYmxlcyBhIGZhaWxpbmcgdGVzdCBvbiAKKyAgICAgICAg
bWlwcy4KKworICAgICAgICBUaGUgaXNzdWUgd2FzIGZvdW5kIHdoZW4gY3Jvc3MgY29tcGlsaW5n
IHRvIG1pcHMgd2l0aCBnY2MgOC40LjAgYW5kCisgICAgICAgIG9wdGlvbnMgLWZmcC1jb250cmFj
dD1vZmYgLW1tYWRkNC4KKworICAgICAgICAqIENoYWtyYUNvcmUueWFtbDoKKwogMjAyMS0xMS0x
MCAgWGFuIExvcGV6ICA8eGFuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0pTQ11bMzJiaXRdIFVu
c2tpcCBKU1Rlc3RzL3N0cmVzcy9qc29uLXN0cmluZ2lmeS1zdHJpbmctYnVpbGRlci1vdmVyZmxv
dy5qcwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>443839</attachid>
            <date>2021-11-10 11:31:36 -0800</date>
            <delta_ts>2021-11-12 05:36:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232951-20211110193135.patch</filename>
            <type>text/plain</type>
            <size>4190</size>
            <attacher name="Mikhail R. Gadelha">mikhail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
MTJjYjM0NzU4NTc2NDdhOWNhNTgyMWIxYzIyZjdkNGI5NDZmMjM0Li41MTI2ZjhiNjkzOGMxMmVm
NjUwMGJmNGIyZGFkZTQyOTk3MzY0NGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAyMS0xMS0xMCAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFByZXZlbnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJz
ZUludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMy
OTUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hl
biBwYXJzaW5nIHRoZSBzdHJpbmcgaW4gcGFyc2VJbnQsIGEgY29tcGlsZXIgY2FuIHdyb25nZnVs
bHkgZ2VuZXJhdGUKKyAgICAgICAgYSBmdXNlZCBtdWx0aXBseS1hZGQgaW5zdHJ1Y3Rpb24sIGNh
dXNpbmcgdGhlIGNvbnZlcnNpb24gdG8gYmUgd3JvbmcKKyAgICAgICAgZm9yIHNvbWUgaGlnaCB2
YWx1ZXMuIEFuIGFkZCBmb2xsb3dlZCBieSBhIG11bHRpcGx5IGdpdmVzIHRoZSBjb3JyZWN0Cisg
ICAgICAgIHJlc3VsdCBhbmQgaXQgaXMgdGhlIGNvZGUgZ2VuZXJhdGVkIG1vc3Qgb2YgdGhlIHRp
bWVzLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBhIHZvbGF0aWxlIHF1YWxpZmllciB0byB0
aGUgbnVtYmVyIHZhcmlhYmxlLCBzbyB0aGUKKyAgICAgICAgY29tcGlsZXIgZG9lc24ndCB0cnkg
dG8gb3B0aW1pemUgaXQsIGFuZCBlbmFibGVzIGEgZmFpbGluZyB0ZXN0IG9uCisgICAgICAgIG1p
cHMuCisKKyAgICAgICAgVGhlIGlzc3VlIHdhcyBmb3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0
byBtaXBzIHdpdGggZ2NjIDguNC4wIGFuZAorICAgICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9
b2ZmIC1tbWFkZDQuCisKKyAgICAgICAgKiBydW50aW1lL1BhcnNlSW50Lmg6CisgICAgICAgIChK
U0M6OnBhcnNlSW50KToKKwogMjAyMS0xMS0wOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVl
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyODUyNDYuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUludC5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUGFyc2VJbnQuaAppbmRleCAyOGE5MGE2YzJiYjE5
ZjliZDE3ZTA3YTczMTVjZDJmYjJlZmUxMzFlLi5lMzQyMmVmZjQ1OTEyYmIzMDE5ODUxNzljZmZl
MmJhOTg4N2EzM2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Q
YXJzZUludC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1BhcnNlSW50LmgK
QEAgLTEwNyw2ICsxMDcsMTAgQEAgQUxXQVlTX0lOTElORSBzdGF0aWMgYm9vbCBpc1N0cldoaXRl
U3BhY2UoVUNoYXIgYykKIH0KIAogLy8gRVM1LjEgMTUuMS4yLjIKKy8vIER1ZSB0byBhIEdDQyBi
dWcgZm91bmQgaW4gdjguNC4wLCBhIHdyb25nIGZ1c2VkIG11bHRpcGx5LWFkZCBvcHRpbWl6YXRp
b24gY2FuIGJlIGluc2VydGVkIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGZpbmFsIG51bWJlciwKKy8v
IGluIG51bWJlciAqPSByYWRpeDsgbnVtYmVyICs9IGRpZ2l0Oywgc28gb3B0aW1pemF0aW9ucyBh
cmUgZGlzYWJsZWQgZm9yIHRoaXMgZnVuY3Rpb25zLgorI3ByYWdtYSBHQ0MgcHVzaF9vcHRpb25z
CisjcHJhZ21hIEdDQyBvcHRpbWl6ZSAoIk8wIikKIHRlbXBsYXRlIDx0eXBlbmFtZSBDaGFyVHlw
ZT4KIEFMV0FZU19JTkxJTkUKIHN0YXRpYyBkb3VibGUgcGFyc2VJbnQoU3RyaW5nVmlldyBzLCBj
b25zdCBDaGFyVHlwZSogZGF0YSwgaW50IHJhZGl4KQpAQCAtMTg5LDYgKzE5Myw3IEBAIHN0YXRp
YyBkb3VibGUgcGFyc2VJbnQoU3RyaW5nVmlldyBzLCBjb25zdCBDaGFyVHlwZSogZGF0YSwgaW50
IHJhZGl4KQogICAgIC8vIDE1LiBSZXR1cm4gc2lnbiB4IG51bWJlci4KICAgICByZXR1cm4gc2ln
biAqIG51bWJlcjsKIH0KKyNwcmFnbWEgR0NDIHBvcF9vcHRpb25zCiAKIEFMV0FZU19JTkxJTkUg
c3RhdGljIGRvdWJsZSBwYXJzZUludChTdHJpbmdWaWV3IHMsIGludCByYWRpeCkKIHsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvQ2hha3JhQ29yZS55YW1sIGIvSlNUZXN0cy9DaGFrcmFDb3JlLnlhbWwK
aW5kZXggNzRhYTE1YzY1MTY5ODdhNTFjMWNlYzg3NDFlMGJjYmZmNTUxOTQ2ZC4uMzg2MDYzODI1
ZTlmODBmZTJhYWVjOWRjN2Y5MTdlYmM5NzMwZDQ2MiAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFr
cmFDb3JlLnlhbWwKKysrIGIvSlNUZXN0cy9DaGFrcmFDb3JlLnlhbWwKQEAgLTY5NiwxMiArNjk2
LDcgQEAKICAgICAgIGVuZAogLSBwYXRoOiBDaGFrcmFDb3JlL3Rlc3QvR2xvYmFsRnVuY3Rpb25z
L1BhcnNlSW50MS5qcwogICAjIEN1cnJlbnRseSBmYWlscyBvbiB0aGUgTG9vbmdzb24gM0E0MDAw
IChpbiAzMi1iaXRzIG1vZGUpLgotICBjbWQ6IHwKLSAgICBpZiAkYXJjaGl0ZWN0dXJlID09ICJt
aXBzIgotICAgICAgc2tpcAotICAgIGVsc2UKLSAgICAgIHJ1bkNoYWtyYSA6YmFzZWxpbmUsICJO
b0V4Y2VwdGlvbiIsICJQYXJzZUludDEuYmFzZWxpbmUiLCBbXQotICAgIGVuZAorICBjbWQ6IHJ1
bkNoYWtyYSA6YmFzZWxpbmUsICJOb0V4Y2VwdGlvbiIsICJQYXJzZUludDEuYmFzZWxpbmUiLCBb
XQogLSBwYXRoOiBDaGFrcmFDb3JlL3Rlc3QvR2xvYmFsRnVuY3Rpb25zL3RvU3RyaW5nLmpzCiAg
IGNtZDogcnVuQ2hha3JhIDpiYXNlbGluZSwgIk5vRXhjZXB0aW9uIiwgInRvU3RyaW5nLmJhc2Vs
aW5lIiwgW10KIC0gcGF0aDogQ2hha3JhQ29yZS90ZXN0L0lubGluZUNhY2hlcy90MC5qcwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBkNDkw
YzRiYTQ2MDYzZjIyOGNiYjc3YjIzMTg1MzE2OGE5ZjhjMjU1Li5iM2MwYzlmMDk4ZDQzZmRiNDI5
MGM4YmY1MTAwY2U1OWRkYzBhOWIzIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysg
Yi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTExLTEwICBNaWtoYWls
IFIuIEdhZGVsaGEgIDxtaWtoYWlsQGlnYWxpYS5jb20+CisKKyAgICAgICAgUHJldmVudCBmdXNl
ZCBtdWx0aXBseSBhZGQgZHVyaW5nIFBhcnNlSW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzI5NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIHBhcnNpbmcgdGhlIHN0cmluZyBpbiBwYXJzZUlu
dCwgYSBjb21waWxlciBjYW4gd3JvbmdmdWxseSBnZW5lcmF0ZQorICAgICAgICBhIGZ1c2VkIG11
bHRpcGx5LWFkZCBpbnN0cnVjdGlvbiwgY2F1c2luZyB0aGUgY29udmVyc2lvbiB0byBiZSB3cm9u
ZworICAgICAgICBmb3Igc29tZSBoaWdoIHZhbHVlcy4gQW4gYWRkIGZvbGxvd2VkIGJ5IGEgbXVs
dGlwbHkgZ2l2ZXMgdGhlIGNvcnJlY3QKKyAgICAgICAgcmVzdWx0IGFuZCBpdCBpcyB0aGUgY29k
ZSBnZW5lcmF0ZWQgbW9zdCBvZiB0aGUgdGltZXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRz
IGEgdm9sYXRpbGUgcXVhbGlmaWVyIHRvIHRoZSBudW1iZXIgdmFyaWFibGUsIHNvIHRoZQorICAg
ICAgICBjb21waWxlciBkb2Vzbid0IHRyeSB0byBvcHRpbWl6ZSBpdCwgYW5kIGVuYWJsZXMgYSBm
YWlsaW5nIHRlc3Qgb24KKyAgICAgICAgbWlwcy4KKworICAgICAgICBUaGUgaXNzdWUgd2FzIGZv
dW5kIHdoZW4gY3Jvc3MgY29tcGlsaW5nIHRvIG1pcHMgd2l0aCBnY2MgOC40LjAgYW5kCisgICAg
ICAgIG9wdGlvbnMgLWZmcC1jb250cmFjdD1vZmYgLW1tYWRkNC4KKworICAgICAgICAqIENoYWty
YUNvcmUueWFtbDoKKwogMjAyMS0xMS0xMCAgWGFuIExvcGV6ICA8eGFuQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgW0pTQ11bMzJiaXRdIFVuc2tpcCBKU1Rlc3RzL3N0cmVzcy9qc29uLXN0cmluZ2lm
eS1zdHJpbmctYnVpbGRlci1vdmVyZmxvdy5qcwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>444060</attachid>
            <date>2021-11-12 05:36:17 -0800</date>
            <delta_ts>2021-11-13 05:28:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232951-20211112133616.patch</filename>
            <type>text/plain</type>
            <size>4989</size>
            <attacher name="Mikhail R. Gadelha">mikhail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
MTJjYjM0NzU4NTc2NDdhOWNhNTgyMWIxYzIyZjdkNGI5NDZmMjM0Li5kMDhkYjEyYmVjODk0NTRj
OGQ2ODY3NWIyMDdlMDk1MzAyOWIxNWRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMSBAQAorMjAyMS0xMS0xMCAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFByZXZlbnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJz
ZUludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMy
OTUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hl
biBwYXJzaW5nIHRoZSBzdHJpbmcgaW4gcGFyc2VJbnQsIGdjYyBjYW4gd3JvbmdmdWxseSBnZW5l
cmF0ZQorICAgICAgICBhIGZ1c2VkIG11bHRpcGx5LWFkZCBpbnN0cnVjdGlvbiwgY2F1c2luZyB0
aGUgY29udmVyc2lvbiB0byBiZSB3cm9uZworICAgICAgICBmb3Igc29tZSBoaWdoIHZhbHVlcy4g
QW4gYWRkIGZvbGxvd2VkIGJ5IGEgbXVsdGlwbHkgZ2l2ZXMgdGhlIGNvcnJlY3QKKyAgICAgICAg
cmVzdWx0IGFuZCBpdCBpcyB0aGUgY29kZSBnZW5lcmF0ZWQgbW9zdCBvZiB0aGUgdGltZXMuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgdm9sYXRpbGUgcXVhbGlmaWVyIHRvIHRoZSBudW1i
ZXIgdmFyaWFibGUsIHNvIHRoZQorICAgICAgICBjb21waWxlciBkb2Vzbid0IHRyeSB0byBvcHRp
bWl6ZSBpdCwgYW5kIGVuYWJsZXMgYSBmYWlsaW5nIHRlc3Qgb24KKyAgICAgICAgbWlwcy4KKwor
ICAgICAgICBBbHRlcm5hdGl2ZSBzb2x1dGlvbnMgdGhhdCBJIHRyaWVkIGJ1dCBnY2Mgc2VlbXMg
dG8gaWdub3JlOiAjcHJhZ21hCisgICAgICAgIFNUREMgRlBfQ09OVFJBQ1QgT0ZGLCBjb21waWxp
bmcgd2l0aCAtZmZwLWNvbnRyYWN0PW9mZiwgYW5kIHNldHRpbmcgZnVuY3Rpb24KKyAgICAgICAg
YXR0cmlidXRlcyBfX2F0dHJpYnV0ZV9fKChvcHRpbWl6ZSgiZnAtY29udHJhY3Q9b2ZmIikpKSBh
bmQKKyAgICAgICAgX19hdHRyaWJ1dGVfXygob3B0aW1pemUoIi1mZnAtY29udHJhY3Q9b2ZmIikp
KSwgc28gdm9sYXRpdmUgc2VlbXMgdG8gYmUKKyAgICAgICAgYSBnb29kIGNvbXByb21pc2UuCisK
KyAgICAgICAgVGhlIGlzc3VlIHdhcyBmb3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0byBtaXBz
IHdpdGggZ2NjIDguNC4wIGFuZAorICAgICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9b2ZmIC1t
bWFkZDQuCisKKyAgICAgICAgKiBydW50aW1lL1BhcnNlSW50Lmg6CisgICAgICAgIChKU0M6OnBh
cnNlSW50KToKKwogMjAyMS0xMS0wOSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyODUyNDYuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUludC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUGFyc2VJbnQuaAppbmRleCAyOGE5MGE2YzJiYjE5ZjliZDE3
ZTA3YTczMTVjZDJmYjJlZmUxMzFlLi5mMDVjNDhmNjdiNWNlZmYwN2NhZTRkYzdlY2E3ODFiNTBh
YmRhYWUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUlu
dC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1BhcnNlSW50LmgKQEAgLTE2
Miw3ICsxNjIsMTUgQEAgc3RhdGljIGRvdWJsZSBwYXJzZUludChTdHJpbmdWaWV3IHMsIGNvbnN0
IENoYXJUeXBlKiBkYXRhLCBpbnQgcmFkaXgpCiAgICAgLy8gMTQuIExldCBudW1iZXIgYmUgdGhl
IE51bWJlciB2YWx1ZSBmb3IgbWF0aEludC4KICAgICBpbnQgZmlyc3REaWdpdFBvc2l0aW9uID0g
cDsKICAgICBib29sIHNhd0RpZ2l0ID0gZmFsc2U7CisjaWYgQ09NUElMRVIoR0NDKQorICAgIC8v
IER1ZSB0byBhIGJ1ZyBmb3VuZCBpbiBHQ0MgdjguNC4wLCBhIHdyb25nIGZ1c2VkIG11bHRpcGx5
LWFkZCBvcHRpbWl6YXRpb24gY2FuIGJlIGluc2VydGVkIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGZp
bmFsIG51bWJlciwKKyAgICAvLyBpbiBudW1iZXIgKj0gcmFkaXg7IG51bWJlciArPSBkaWdpdDss
IHNvIGFkZCB2b2xhdGlsZSB0byBwcmV2ZW50IG9wdGltaXphdGlvbnMuCisgICAgLy8gR0NDIHY4
LjQuMCBhbHNvIHNlZW1zIHRvIGlnbm9yZSAjcHJhZ21hIFNUREMgRlBfQ09OVFJBQ1QgT0ZGLCBj
b21waWxpbmcgd2l0aCAtZmZwLWNvbnRyYWN0PW9mZiwgYW5kIHNldHRpbmcgZnVuY3Rpb24gYXR0
cmlidXRlcworICAgIC8vIF9fYXR0cmlidXRlX18oKG9wdGltaXplKCJmcC1jb250cmFjdD1vZmYi
KSkpIGFuZCBfX2F0dHJpYnV0ZV9fKChvcHRpbWl6ZSgiLWZmcC1jb250cmFjdD1vZmYiKSkpLgor
ICAgIHZvbGF0aWxlIGRvdWJsZSBudW1iZXIgPSAwOworI2Vsc2UKICAgICBkb3VibGUgbnVtYmVy
ID0gMDsKKyNlbmRpZgogICAgIHdoaWxlIChwIDwgbGVuZ3RoKSB7CiAgICAgICAgIGludCBkaWdp
dCA9IHBhcnNlRGlnaXQoZGF0YVtwXSwgcmFkaXgpOwogICAgICAgICBpZiAoZGlnaXQgPT0gLTEp
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYWtyYUNvcmUueWFtbCBiL0pTVGVzdHMvQ2hha3JhQ29y
ZS55YW1sCmluZGV4IDc0YWExNWM2NTE2OTg3YTUxYzFjZWM4NzQxZTBiY2JmZjU1MTk0NmQuLjM4
NjA2MzgyNWU5ZjgwZmUyYWFlYzlkYzdmOTE3ZWJjOTczMGQ0NjIgMTAwNjQ0Ci0tLSBhL0pTVGVz
dHMvQ2hha3JhQ29yZS55YW1sCisrKyBiL0pTVGVzdHMvQ2hha3JhQ29yZS55YW1sCkBAIC02OTYs
MTIgKzY5Niw3IEBACiAgICAgICBlbmQKIC0gcGF0aDogQ2hha3JhQ29yZS90ZXN0L0dsb2JhbEZ1
bmN0aW9ucy9QYXJzZUludDEuanMKICAgIyBDdXJyZW50bHkgZmFpbHMgb24gdGhlIExvb25nc29u
IDNBNDAwMCAoaW4gMzItYml0cyBtb2RlKS4KLSAgY21kOiB8Ci0gICAgaWYgJGFyY2hpdGVjdHVy
ZSA9PSAibWlwcyIKLSAgICAgIHNraXAKLSAgICBlbHNlCi0gICAgICBydW5DaGFrcmEgOmJhc2Vs
aW5lLCAiTm9FeGNlcHRpb24iLCAiUGFyc2VJbnQxLmJhc2VsaW5lIiwgW10KLSAgICBlbmQKKyAg
Y21kOiBydW5DaGFrcmEgOmJhc2VsaW5lLCAiTm9FeGNlcHRpb24iLCAiUGFyc2VJbnQxLmJhc2Vs
aW5lIiwgW10KIC0gcGF0aDogQ2hha3JhQ29yZS90ZXN0L0dsb2JhbEZ1bmN0aW9ucy90b1N0cmlu
Zy5qcwogICBjbWQ6IHJ1bkNoYWtyYSA6YmFzZWxpbmUsICJOb0V4Y2VwdGlvbiIsICJ0b1N0cmlu
Zy5iYXNlbGluZSIsIFtdCiAtIHBhdGg6IENoYWtyYUNvcmUvdGVzdC9JbmxpbmVDYWNoZXMvdDAu
anMKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggZDQ5MGM0YmE0NjA2M2YyMjhjYmI3N2IyMzE4NTMxNjhhOWY4YzI1NS4uOWRlOTcwZWJiMjYx
MzM4ZmZiOWRiMzdiODlmMGJiMzRlMTdlZTE3YSAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBAQAorMjAyMS0xMS0xMCAg
TWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2FsaWEuY29tPgorCisgICAgICAgIFByZXZl
bnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJzZUludAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyOTUxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBwYXJzaW5nIHRoZSBzdHJpbmcgaW4g
cGFyc2VJbnQsIGdjYyBjYW4gd3JvbmdmdWxseSBnZW5lcmF0ZQorICAgICAgICBhIGZ1c2VkIG11
bHRpcGx5LWFkZCBpbnN0cnVjdGlvbiwgY2F1c2luZyB0aGUgY29udmVyc2lvbiB0byBiZSB3cm9u
ZworICAgICAgICBmb3Igc29tZSBoaWdoIHZhbHVlcy4gQW4gYWRkIGZvbGxvd2VkIGJ5IGEgbXVs
dGlwbHkgZ2l2ZXMgdGhlIGNvcnJlY3QKKyAgICAgICAgcmVzdWx0IGFuZCBpdCBpcyB0aGUgY29k
ZSBnZW5lcmF0ZWQgbW9zdCBvZiB0aGUgdGltZXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRz
IGEgdm9sYXRpbGUgcXVhbGlmaWVyIHRvIHRoZSBudW1iZXIgdmFyaWFibGUsIHNvIHRoZQorICAg
ICAgICBjb21waWxlciBkb2Vzbid0IHRyeSB0byBvcHRpbWl6ZSBpdCwgYW5kIGVuYWJsZXMgYSBm
YWlsaW5nIHRlc3Qgb24KKyAgICAgICAgbWlwcy4KKworICAgICAgICBBbHRlcm5hdGl2ZSBzb2x1
dGlvbnMgdGhhdCBJIHRyaWVkIGJ1dCBnY2Mgc2VlbXMgdG8gaWdub3JlOiAjcHJhZ21hCisgICAg
ICAgIFNUREMgRlBfQ09OVFJBQ1QgT0ZGLCBjb21waWxpbmcgd2l0aCAtZmZwLWNvbnRyYWN0PW9m
ZiwgYW5kIHNldHRpbmcgZnVuY3Rpb24KKyAgICAgICAgYXR0cmlidXRlcyBfX2F0dHJpYnV0ZV9f
KChvcHRpbWl6ZSgiZnAtY29udHJhY3Q9b2ZmIikpKSBhbmQKKyAgICAgICAgX19hdHRyaWJ1dGVf
Xygob3B0aW1pemUoIi1mZnAtY29udHJhY3Q9b2ZmIikpKSwgc28gdm9sYXRpdmUgc2VlbXMgdG8g
YmUKKyAgICAgICAgYSBnb29kIGNvbXByb21pc2UuCisKKyAgICAgICAgVGhlIGlzc3VlIHdhcyBm
b3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0byBtaXBzIHdpdGggZ2NjIDguNC4wIGFuZAorICAg
ICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9b2ZmIC1tbWFkZDQuCisKKyAgICAgICAgKiBDaGFr
cmFDb3JlLnlhbWw6CisKIDIwMjEtMTEtMTAgIFhhbiBMb3BleiAgPHhhbkBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFtKU0NdWzMyYml0XSBVbnNraXAgSlNUZXN0cy9zdHJlc3MvanNvbi1zdHJpbmdp
Znktc3RyaW5nLWJ1aWxkZXItb3ZlcmZsb3cuanMK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>444136</attachid>
            <date>2021-11-13 05:28:35 -0800</date>
            <delta_ts>2021-11-14 00:45:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-232951-20211113092833.patch</filename>
            <type>text/plain</type>
            <size>4941</size>
            <attacher name="Mikhail R. Gadelha">mikhail</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg1NzcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAx
ODA2ZjEzZWVjMzgyN2FhNzRjOTVkMjg0NjhiYjJkMDJiMTc4OTJjLi40OGIzYjM4Zjg2MmZkZGVl
ZTFlNzE3ZGRjNzA0ZjNmMDU2ODMxN2IzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMSBAQAorMjAyMS0xMS0xMCAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFByZXZlbnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJz
ZUludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMy
OTUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hl
biBwYXJzaW5nIHRoZSBzdHJpbmcgaW4gcGFyc2VJbnQsIGdjYyBjYW4gd3JvbmdmdWxseSBnZW5l
cmF0ZQorICAgICAgICBhIGZ1c2VkIG11bHRpcGx5LWFkZCBpbnN0cnVjdGlvbiwgY2F1c2luZyB0
aGUgY29udmVyc2lvbiB0byBiZSB3cm9uZworICAgICAgICBmb3Igc29tZSBoaWdoIHZhbHVlcy4g
QW4gYWRkIGZvbGxvd2VkIGJ5IGEgbXVsdGlwbHkgZ2l2ZXMgdGhlIGNvcnJlY3QKKyAgICAgICAg
cmVzdWx0IGFuZCBpdCBpcyB0aGUgY29kZSBnZW5lcmF0ZWQgbW9zdCBvZiB0aGUgdGltZXMuCisK
KyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgdm9sYXRpbGUgcXVhbGlmaWVyIHRvIHRoZSBudW1i
ZXIgdmFyaWFibGUsIHNvIHRoZQorICAgICAgICBjb21waWxlciBkb2Vzbid0IHRyeSB0byBvcHRp
bWl6ZSBpdCwgYW5kIGVuYWJsZXMgYSBmYWlsaW5nIHRlc3Qgb24KKyAgICAgICAgbWlwcy4KKwor
ICAgICAgICBBbHRlcm5hdGl2ZSBzb2x1dGlvbnMgdGhhdCBJIHRyaWVkIGJ1dCBnY2Mgc2VlbXMg
dG8gaWdub3JlOiAjcHJhZ21hCisgICAgICAgIFNUREMgRlBfQ09OVFJBQ1QgT0ZGLCBjb21waWxp
bmcgd2l0aCAtZmZwLWNvbnRyYWN0PW9mZiwgYW5kIHNldHRpbmcgZnVuY3Rpb24KKyAgICAgICAg
YXR0cmlidXRlcyBfX2F0dHJpYnV0ZV9fKChvcHRpbWl6ZSgiZnAtY29udHJhY3Q9b2ZmIikpKSBh
bmQKKyAgICAgICAgX19hdHRyaWJ1dGVfXygob3B0aW1pemUoIi1mZnAtY29udHJhY3Q9b2ZmIikp
KSwgc28gdm9sYXRpdmUgc2VlbXMgdG8gYmUKKyAgICAgICAgYSBnb29kIGNvbXByb21pc2UuCisK
KyAgICAgICAgVGhlIGlzc3VlIHdhcyBmb3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0byBtaXBz
IHdpdGggZ2NjIDguNC4wIGFuZAorICAgICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9b2ZmIC1t
bWFkZDQuCisKKyAgICAgICAgKiBydW50aW1lL1BhcnNlSW50Lmg6CisgICAgICAgIChKU0M6OnBh
cnNlSW50KToKKwogMjAyMS0xMS0xMiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgTWFrZSBzb3J0LVhjb2RlLXByb2plY3QtZmlsZSBpZGVtcG90ZW50CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUludC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUGFyc2VJbnQuaAppbmRleCAyOGE5MGE2YzJiYjE5ZjliZDE3
ZTA3YTczMTVjZDJmYjJlZmUxMzFlLi5mMDVjNDhmNjdiNWNlZmYwN2NhZTRkYzdlY2E3ODFiNTBh
YmRhYWUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9QYXJzZUlu
dC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1BhcnNlSW50LmgKQEAgLTE2
Miw3ICsxNjIsMTUgQEAgc3RhdGljIGRvdWJsZSBwYXJzZUludChTdHJpbmdWaWV3IHMsIGNvbnN0
IENoYXJUeXBlKiBkYXRhLCBpbnQgcmFkaXgpCiAgICAgLy8gMTQuIExldCBudW1iZXIgYmUgdGhl
IE51bWJlciB2YWx1ZSBmb3IgbWF0aEludC4KICAgICBpbnQgZmlyc3REaWdpdFBvc2l0aW9uID0g
cDsKICAgICBib29sIHNhd0RpZ2l0ID0gZmFsc2U7CisjaWYgQ09NUElMRVIoR0NDKQorICAgIC8v
IER1ZSB0byBhIGJ1ZyBmb3VuZCBpbiBHQ0MgdjguNC4wLCBhIHdyb25nIGZ1c2VkIG11bHRpcGx5
LWFkZCBvcHRpbWl6YXRpb24gY2FuIGJlIGluc2VydGVkIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGZp
bmFsIG51bWJlciwKKyAgICAvLyBpbiBudW1iZXIgKj0gcmFkaXg7IG51bWJlciArPSBkaWdpdDss
IHNvIGFkZCB2b2xhdGlsZSB0byBwcmV2ZW50IG9wdGltaXphdGlvbnMuCisgICAgLy8gR0NDIHY4
LjQuMCBhbHNvIHNlZW1zIHRvIGlnbm9yZSAjcHJhZ21hIFNUREMgRlBfQ09OVFJBQ1QgT0ZGLCBj
b21waWxpbmcgd2l0aCAtZmZwLWNvbnRyYWN0PW9mZiwgYW5kIHNldHRpbmcgZnVuY3Rpb24gYXR0
cmlidXRlcworICAgIC8vIF9fYXR0cmlidXRlX18oKG9wdGltaXplKCJmcC1jb250cmFjdD1vZmYi
KSkpIGFuZCBfX2F0dHJpYnV0ZV9fKChvcHRpbWl6ZSgiLWZmcC1jb250cmFjdD1vZmYiKSkpLgor
ICAgIHZvbGF0aWxlIGRvdWJsZSBudW1iZXIgPSAwOworI2Vsc2UKICAgICBkb3VibGUgbnVtYmVy
ID0gMDsKKyNlbmRpZgogICAgIHdoaWxlIChwIDwgbGVuZ3RoKSB7CiAgICAgICAgIGludCBkaWdp
dCA9IHBhcnNlRGlnaXQoZGF0YVtwXSwgcmFkaXgpOwogICAgICAgICBpZiAoZGlnaXQgPT0gLTEp
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYWtyYUNvcmUueWFtbCBiL0pTVGVzdHMvQ2hha3JhQ29y
ZS55YW1sCmluZGV4IDc0YWExNWM2NTE2OTg3YTUxYzFjZWM4NzQxZTBiY2JmZjU1MTk0NmQuLjM4
NjA2MzgyNWU5ZjgwZmUyYWFlYzlkYzdmOTE3ZWJjOTczMGQ0NjIgMTAwNjQ0Ci0tLSBhL0pTVGVz
dHMvQ2hha3JhQ29yZS55YW1sCisrKyBiL0pTVGVzdHMvQ2hha3JhQ29yZS55YW1sCkBAIC02OTYs
MTIgKzY5Niw3IEBACiAgICAgICBlbmQKIC0gcGF0aDogQ2hha3JhQ29yZS90ZXN0L0dsb2JhbEZ1
bmN0aW9ucy9QYXJzZUludDEuanMKICAgIyBDdXJyZW50bHkgZmFpbHMgb24gdGhlIExvb25nc29u
IDNBNDAwMCAoaW4gMzItYml0cyBtb2RlKS4KLSAgY21kOiB8Ci0gICAgaWYgJGFyY2hpdGVjdHVy
ZSA9PSAibWlwcyIKLSAgICAgIHNraXAKLSAgICBlbHNlCi0gICAgICBydW5DaGFrcmEgOmJhc2Vs
aW5lLCAiTm9FeGNlcHRpb24iLCAiUGFyc2VJbnQxLmJhc2VsaW5lIiwgW10KLSAgICBlbmQKKyAg
Y21kOiBydW5DaGFrcmEgOmJhc2VsaW5lLCAiTm9FeGNlcHRpb24iLCAiUGFyc2VJbnQxLmJhc2Vs
aW5lIiwgW10KIC0gcGF0aDogQ2hha3JhQ29yZS90ZXN0L0dsb2JhbEZ1bmN0aW9ucy90b1N0cmlu
Zy5qcwogICBjbWQ6IHJ1bkNoYWtyYSA6YmFzZWxpbmUsICJOb0V4Y2VwdGlvbiIsICJ0b1N0cmlu
Zy5iYXNlbGluZSIsIFtdCiAtIHBhdGg6IENoYWtyYUNvcmUvdGVzdC9JbmxpbmVDYWNoZXMvdDAu
anMKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggMzQ5ZDY0ZTQyNzRkZTMxZTU1YjZiMzNiODlhNTIwYzg2MThjYWM0OS4uYjg1NjRkMmQwYTEz
ZGRmNjQ4NmJkM2IzMGUwMWUwZTAzN2QxM2I5YyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBAQAorMjAyMS0xMS0xMCAg
TWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2FsaWEuY29tPgorCisgICAgICAgIFByZXZl
bnQgZnVzZWQgbXVsdGlwbHkgYWRkIGR1cmluZyBQYXJzZUludAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMyOTUxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBwYXJzaW5nIHRoZSBzdHJpbmcgaW4g
cGFyc2VJbnQsIGdjYyBjYW4gd3JvbmdmdWxseSBnZW5lcmF0ZQorICAgICAgICBhIGZ1c2VkIG11
bHRpcGx5LWFkZCBpbnN0cnVjdGlvbiwgY2F1c2luZyB0aGUgY29udmVyc2lvbiB0byBiZSB3cm9u
ZworICAgICAgICBmb3Igc29tZSBoaWdoIHZhbHVlcy4gQW4gYWRkIGZvbGxvd2VkIGJ5IGEgbXVs
dGlwbHkgZ2l2ZXMgdGhlIGNvcnJlY3QKKyAgICAgICAgcmVzdWx0IGFuZCBpdCBpcyB0aGUgY29k
ZSBnZW5lcmF0ZWQgbW9zdCBvZiB0aGUgdGltZXMuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRz
IGEgdm9sYXRpbGUgcXVhbGlmaWVyIHRvIHRoZSBudW1iZXIgdmFyaWFibGUsIHNvIHRoZQorICAg
ICAgICBjb21waWxlciBkb2Vzbid0IHRyeSB0byBvcHRpbWl6ZSBpdCwgYW5kIGVuYWJsZXMgYSBm
YWlsaW5nIHRlc3Qgb24KKyAgICAgICAgbWlwcy4KKworICAgICAgICBBbHRlcm5hdGl2ZSBzb2x1
dGlvbnMgdGhhdCBJIHRyaWVkIGJ1dCBnY2Mgc2VlbXMgdG8gaWdub3JlOiAjcHJhZ21hCisgICAg
ICAgIFNUREMgRlBfQ09OVFJBQ1QgT0ZGLCBjb21waWxpbmcgd2l0aCAtZmZwLWNvbnRyYWN0PW9m
ZiwgYW5kIHNldHRpbmcgZnVuY3Rpb24KKyAgICAgICAgYXR0cmlidXRlcyBfX2F0dHJpYnV0ZV9f
KChvcHRpbWl6ZSgiZnAtY29udHJhY3Q9b2ZmIikpKSBhbmQKKyAgICAgICAgX19hdHRyaWJ1dGVf
Xygob3B0aW1pemUoIi1mZnAtY29udHJhY3Q9b2ZmIikpKSwgc28gdm9sYXRpdmUgc2VlbXMgdG8g
YmUKKyAgICAgICAgYSBnb29kIGNvbXByb21pc2UuCisKKyAgICAgICAgVGhlIGlzc3VlIHdhcyBm
b3VuZCB3aGVuIGNyb3NzIGNvbXBpbGluZyB0byBtaXBzIHdpdGggZ2NjIDguNC4wIGFuZAorICAg
ICAgICBvcHRpb25zIC1mZnAtY29udHJhY3Q9b2ZmIC1tbWFkZDQuCisKKyAgICAgICAgKiBDaGFr
cmFDb3JlLnlhbWw6CisKIDIwMjEtMTEtMTIgIEpvc2VwaCBHcmllZ28gIDxqZ3JpZWdvQGlnYWxp
YS5jb20+CiAKICAgICAgICAgW0pTQ10gdXBkYXRlIHRlc3QyNjIK
</data>

          </attachment>
      

    </bug>

</bugzilla>