<?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>190693</bug_id>
          
          <creation_ts>2018-10-17 16:24:36 -0700</creation_ts>
          <short_desc>stress/const-semantics.js fails a dfg-eager / ftl-eager run with an ASAN release build.</short_desc>
          <delta_ts>2019-01-24 14:49:43 -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>JavaScriptCore</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="Mark Lam">mark.lam</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</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>1470387</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-10-17 16:24:36 -0700</bug_when>
    <thetext>I&apos;m not sure if ASAN is needed, but that&apos;s what I saw this failure on.  It hasn&apos;t reproduced for me on a debug build though.  I ran it through the run-javascriptcore-tests harness:

$ ./Tools/Scripts/run-javascriptcore-tests --release --no-build --jsc-stress --filter const-semantics

stress/const-semantics.js.dfg-eager: AddressSanitizer:DEADLYSIGNAL
stress/const-semantics.js.dfg-eager: =================================================================
stress/const-semantics.js.dfg-eager: ==9196==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000040 (pc 0x000109bb2c7d bp 0x70000b860430 sp 0x70000b860430 T7)
stress/const-semantics.js.dfg-eager: ==9196==The signal is caused by a READ memory access.
stress/const-semantics.js.dfg-eager: ==9196==Hint: address points to the zero page.
stress/const-semantics.js.dfg-eager:     #0 0x109bb2c7c in JSC::ClassInfo const* WTF::Poisoned&lt;WTF::Poison&lt;g_GlobalDataPoison&gt;, JSC::ClassInfo const*, void&gt;::unpoisoned&lt;JSC::ClassInfo const*&gt;() const Poisoned.h:114
stress/const-semantics.js.dfg-eager:     #1 0x10a0c85cc in JSC::JSCell::methodTable(JSC::VM&amp;) const JSCellInlines.h:297
stress/const-semantics.js.dfg-eager:     #2 0x10b20e099 in JSC::SlotVisitor::drain(WTF::MonotonicTime)::$_3::operator()(JSC::MarkStackArray&amp;) const SlotVisitor.cpp:393
stress/const-semantics.js.dfg-eager:     #3 0x10b2032c7 in JSC::IterationStatus JSC::SlotVisitor::forEachMarkStack&lt;JSC::SlotVisitor::drain(WTF::MonotonicTime)::$_3&gt;(JSC::SlotVisitor::drain(WTF::MonotonicTime)::$_3 const&amp;) SlotVisitorInlines.h:190
stress/const-semantics.js.dfg-eager:     #4 0x10b203198 in JSC::SlotVisitor::drain(WTF::MonotonicTime) SlotVisitor.cpp:493
stress/const-semantics.js.dfg-eager:     #5 0x10b204619 in JSC::SlotVisitor::drainFromShared(JSC::SlotVisitor::SharedDrainMode, WTF::MonotonicTime) SlotVisitor.cpp:693
stress/const-semantics.js.dfg-eager:     #6 0x10b19b056 in JSC::Heap::runBeginPhase(JSC::GCConductor)::$_18::operator()() const Heap.cpp:1269
stress/const-semantics.js.dfg-eager:     #7 0x1094630cf in WTF::ParallelHelperClient::runTask(WTF::RefPtr&lt;WTF::SharedTask&lt;void ()&gt;, WTF::DumbPtrTraits&lt;WTF::SharedTask&lt;void ()&gt; &gt; &gt;) ParallelHelperPool.cpp:112
stress/const-semantics.js.dfg-eager:     #8 0x109464971 in WTF::ParallelHelperPool::Thread::work() ParallelHelperPool.cpp:200
stress/const-semantics.js.dfg-eager:     #9 0x1093fff21 in WTF::AutomaticThread::start(WTF::AbstractLocker const&amp;)::$_0::operator()() const AutomaticThread.cpp:223
stress/const-semantics.js.dfg-eager:     #10 0x1094af758 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) Threading.cpp:136
stress/const-semantics.js.dfg-eager:     #11 0x1094b52b8 in WTF::wtfThreadEntryPoint(void*) ThreadingPthreads.cpp:202
stress/const-semantics.js.dfg-eager:     #12 0x7fff5f5ea660 in _pthread_body (libsystem_pthread.dylib:x86_64+0x3660)
stress/const-semantics.js.dfg-eager:     #13 0x7fff5f5ea50c in _pthread_start (libsystem_pthread.dylib:x86_64+0x350c)
stress/const-semantics.js.dfg-eager:     #14 0x7fff5f5e9bf8 in thread_start (libsystem_pthread.dylib:x86_64+0x2bf8)
stress/const-semantics.js.dfg-eager: 
stress/const-semantics.js.dfg-eager: ==9196==Register values:
stress/const-semantics.js.dfg-eager: rax = 0x0000000000000008  rbx = 0x00006310000008d0  rcx = 0x0000100000000008  rdx = 0x000062d00014f180  
stress/const-semantics.js.dfg-eager: rdi = 0x0000000000000040  rsi = 0x0000000000000000  rbp = 0x000070000b860430  rsp = 0x000070000b860430  
stress/const-semantics.js.dfg-eager:  r8 = 0x0000100000000000   r9 = 0x0000000000000001  r10 = 0x00007fff919721a8  r11 = 0x0000000000000198  
stress/const-semantics.js.dfg-eager: r12 = 0x00000000ffffff9d  r13 = 0x000062d00014f180  r14 = 0x0000000000000000  r15 = 0x0000611000002e80  
stress/const-semantics.js.dfg-eager: AddressSanitizer can not provide additional info.
stress/const-semantics.js.dfg-eager: SUMMARY: AddressSanitizer: SEGV Poisoned.h:114 in JSC::ClassInfo const* WTF::Poisoned&lt;WTF::Poison&lt;g_GlobalDataPoison&gt;, JSC::ClassInfo const*, void&gt;::unpoisoned&lt;JSC::ClassInfo const*&gt;() const
stress/const-semantics.js.dfg-eager: Thread T7 created by T5 here:
stress/const-semantics.js.dfg-eager:     #0 0x10f35650d in wrap_pthread_create (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f50d)
stress/const-semantics.js.dfg-eager:     #1 0x1094b51d3 in WTF::Thread::establishHandle(WTF::Thread::NewThreadContext*) ThreadingPthreads.cpp:214
stress/const-semantics.js.dfg-eager:     #2 0x1094af9e6 in WTF::Thread::create(char const*, WTF::Function&lt;void ()&gt;&amp;&amp;) Threading.cpp:152
stress/const-semantics.js.dfg-eager:     #3 0x1093fc2e4 in WTF::AutomaticThread::start(WTF::AbstractLocker const&amp;) AutomaticThread.cpp:165
stress/const-semantics.js.dfg-eager:     #4 0x1093fc6a6 in WTF::AutomaticThreadCondition::notifyAll(WTF::AbstractLocker const&amp;) AutomaticThread.cpp:76
stress/const-semantics.js.dfg-eager:     #5 0x1094627e1 in WTF::ParallelHelperPool::didMakeWorkAvailable(WTF::AbstractLocker const&amp;) ParallelHelperPool.cpp:216
stress/const-semantics.js.dfg-eager:     #6 0x1094622d0 in WTF::ParallelHelperClient::setTask(WTF::RefPtr&lt;WTF::SharedTask&lt;void ()&gt;, WTF::DumbPtrTraits&lt;WTF::SharedTask&lt;void ()&gt; &gt; &gt;) ParallelHelperPool.cpp:62
stress/const-semantics.js.dfg-eager:     #7 0x10b17b58e in void WTF::ParallelHelperClient::setFunction&lt;JSC::Heap::runBeginPhase(JSC::GCConductor)::$_18&gt;(JSC::Heap::runBeginPhase(JSC::GCConductor)::$_18 const&amp;) ParallelHelperPool.h:142
stress/const-semantics.js.dfg-eager:     #8 0x10b178c4e in JSC::Heap::runBeginPhase(JSC::GCConductor) Heap.cpp:1256
stress/const-semantics.js.dfg-eager:     #9 0x10b177e53 in JSC::Heap::runCurrentPhase(JSC::GCConductor, JSC::CurrentThreadState*) Heap.cpp:1168
stress/const-semantics.js.dfg-eager:     #10 0x10b177ce7 in JSC::Heap::collectInCollectorThread() Heap.cpp:1111
stress/const-semantics.js.dfg-eager:     #11 0x10b1852b8 in JSC::Heap::Thread::work() Heap.cpp:261
stress/const-semantics.js.dfg-eager:     #12 0x1093fff21 in WTF::AutomaticThread::start(WTF::AbstractLocker const&amp;)::$_0::operator()() const AutomaticThread.cpp:223
stress/const-semantics.js.dfg-eager:     #13 0x1094af758 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) Threading.cpp:136
stress/const-semantics.js.dfg-eager:     #14 0x1094b52b8 in WTF::wtfThreadEntryPoint(void*) ThreadingPthreads.cpp:202
stress/const-semantics.js.dfg-eager:     #15 0x7fff5f5ea660 in _pthread_body (libsystem_pthread.dylib:x86_64+0x3660)
stress/const-semantics.js.dfg-eager:     #16 0x7fff5f5ea50c in _pthread_start (libsystem_pthread.dylib:x86_64+0x350c)
stress/const-semantics.js.dfg-eager:     #17 0x7fff5f5e9bf8 in thread_start (libsystem_pthread.dylib:x86_64+0x2bf8)
stress/const-semantics.js.dfg-eager: 
stress/const-semantics.js.dfg-eager: Thread T5 created by T4 here:
stress/const-semantics.js.dfg-eager:     #0 0x10f35650d in wrap_pthread_create (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f50d)
stress/const-semantics.js.dfg-eager:     #1 0x1094b51d3 in WTF::Thread::establishHandle(WTF::Thread::NewThreadContext*) ThreadingPthreads.cpp:214
stress/const-semantics.js.dfg-eager:     #2 0x1094af9e6 in WTF::Thread::create(char const*, WTF::Function&lt;void ()&gt;&amp;&amp;) Threading.cpp:152
stress/const-semantics.js.dfg-eager:     #3 0x1093fc2e4 in WTF::AutomaticThread::start(WTF::AbstractLocker const&amp;) AutomaticThread.cpp:165
stress/const-semantics.js.dfg-eager:     #4 0x10b1adbfe in JSC::Heap::notifyIsSafeToCollect()::$_37::operator()() const Heap.cpp:2827
stress/const-semantics.js.dfg-eager:     #5 0x1094af758 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) Threading.cpp:136
stress/const-semantics.js.dfg-eager:     #6 0x1094b52b8 in WTF::wtfThreadEntryPoint(void*) ThreadingPthreads.cpp:202
stress/const-semantics.js.dfg-eager:     #7 0x7fff5f5ea660 in _pthread_body (libsystem_pthread.dylib:x86_64+0x3660)
stress/const-semantics.js.dfg-eager:     #8 0x7fff5f5ea50c in _pthread_start (libsystem_pthread.dylib:x86_64+0x350c)
stress/const-semantics.js.dfg-eager:     #9 0x7fff5f5e9bf8 in thread_start (libsystem_pthread.dylib:x86_64+0x2bf8)
stress/const-semantics.js.dfg-eager: 
stress/const-semantics.js.dfg-eager: Thread T4 created by T0 here:
stress/const-semantics.js.dfg-eager:     #0 0x10f35650d in wrap_pthread_create (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f50d)
stress/const-semantics.js.dfg-eager:     #1 0x1094b51d3 in WTF::Thread::establishHandle(WTF::Thread::NewThreadContext*) ThreadingPthreads.cpp:214
stress/const-semantics.js.dfg-eager:     #2 0x1094af9e6 in WTF::Thread::create(char const*, WTF::Function&lt;void ()&gt;&amp;&amp;) Threading.cpp:152
stress/const-semantics.js.dfg-eager:     #3 0x10b183967 in JSC::Heap::notifyIsSafeToCollect() Heap.cpp:2816
stress/const-semantics.js.dfg-eager:     #4 0x10bda7be8 in JSC::VM::VM(JSC::VM::VMType, JSC::HeapType) VM.cpp:470
stress/const-semantics.js.dfg-eager:     #5 0x10bdaed89 in JSC::VM::create(JSC::HeapType) VM.cpp:643
stress/const-semantics.js.dfg-eager:     #6 0x1092ad4b3 in int runJSC&lt;jscmain(int, char**)::$_3&gt;(CommandLine, bool, jscmain(int, char**)::$_3 const&amp;) jsc.cpp:2733
stress/const-semantics.js.dfg-eager:     #7 0x1092ab58e in jscmain(int, char**) jsc.cpp:2841
stress/const-semantics.js.dfg-eager:     #8 0x1092ab3ea in main jsc.cpp:2271
stress/const-semantics.js.dfg-eager:     #9 0x7fff5f2d2014 in start (libdyld.dylib:x86_64+0x1014)
stress/const-semantics.js.dfg-eager: 
stress/const-semantics.js.dfg-eager: ==9196==ABORTING
stress/const-semantics.js.dfg-eager: test_script_4: line 2:  9196 Abort trap: 6           ( &quot;$@&quot; ../../.vm/JavaScriptCore.framework/Resources/jsc --useFTLJIT\=false --useFunctionDotArguments\=true --validateExceptionChecks\=true --useDollarVM\=true --maxPerThreadStackUsage\=1572864 --thresholdForJITAfterWarmUp\=10 --thresholdForJITSoon\=10 --thresholdForOptimizeAfterWarmUp\=20 --thresholdForOptimizeAfterLongWarmUp\=20 --thresholdForOptimizeSoon\=20 --thresholdForFTLOptimizeAfterWarmUp\=20 --thresholdForFTLOptimizeSoon\=20 --maximumEvalCacheableSourceLength\=150000 --useEagerCodeBlockJettisonTiming\=true --collectContinuously\=true --useGenerationalGC\=false --useProbeOSRExit\=true const-semantics.js )
stress/const-semantics.js.dfg-eager: ERROR: Unexpected exit code: 134
16/16 (failed 1)    

** The following JSC stress test failures have been introduced:
	stress/const-semantics.js.dfg-eager

Results for JSC stress tests:
    1 failure found.

I&apos;m seeing this on an unmodified ASAN release build of ToT r237236.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470388</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-17 16:25:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/45355615&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470395</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-10-17 16:34:48 -0700</bug_when>
    <thetext>(In reply to Mark Lam from comment #0)
&gt; I&apos;m seeing this on an unmodified ASAN release build of ToT r237236.

Note: I first saw this failure on the JSC EWS bot.  So, ASAN is probably not needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470607</commentid>
    <comment_count>3</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-10-18 11:41:42 -0700</bug_when>
    <thetext>(In reply to Mark Lam from comment #2)
&gt; (In reply to Mark Lam from comment #0)
&gt; &gt; I&apos;m seeing this on an unmodified ASAN release build of ToT r237236.
&gt; 
&gt; Note: I first saw this failure on the JSC EWS bot.  So, ASAN is probably not
&gt; needed.

Agreed. I&apos;ve seen EWS flake on this many times.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497940</commentid>
    <comment_count>4</comment_count>
      <attachid>360035</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-01-24 13:57:58 -0800</bug_when>
    <thetext>Created attachment 360035
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497946</commentid>
    <comment_count>5</comment_count>
      <attachid>360035</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-01-24 14:05:01 -0800</bug_when>
    <thetext>Comment on attachment 360035
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497965</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-01-24 14:37:12 -0800</bug_when>
    <thetext>Committed r240449: &lt;https://trac.webkit.org/changeset/240449&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497967</commentid>
    <comment_count>7</comment_count>
      <attachid>360035</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-24 14:37:55 -0800</bug_when>
    <thetext>Comment on attachment 360035
Patch

I see the ChangeLog for stress/regress-190693.js but don&apos;t see the file itself.  Do you have a missing file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497971</commentid>
    <comment_count>8</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2019-01-24 14:47:53 -0800</bug_when>
    <thetext>(In reply to Mark Lam from comment #7)
&gt; Comment on attachment 360035 [details]
&gt; Patch
&gt; 
&gt; I see the ChangeLog for stress/regress-190693.js but don&apos;t see the file
&gt; itself.  Do you have a missing file?

Correction: it was landed in https://trac.webkit.org/browser/webkit/trunk/JSTests/stress/regress-190693.js?rev=240449, just not included in the patch.  All is well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497973</commentid>
    <comment_count>9</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-01-24 14:49:43 -0800</bug_when>
    <thetext>(In reply to Mark Lam from comment #8)
&gt; (In reply to Mark Lam from comment #7)
&gt; &gt; Comment on attachment 360035 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; I see the ChangeLog for stress/regress-190693.js but don&apos;t see the file
&gt; &gt; itself.  Do you have a missing file?
&gt; 
&gt; Correction: it was landed in
&gt; https://trac.webkit.org/browser/webkit/trunk/JSTests/stress/regress-190693.
&gt; js?rev=240449, just not included in the patch.  All is well.

Oops! Sorry. Maybe, I performed `webkit-patch upload --update-changelogs` before doing `git commit`.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>360035</attachid>
            <date>2019-01-24 13:57:58 -0800</date>
            <delta_ts>2019-01-24 14:05:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190693-20190124135757.patch</filename>
            <type>text/plain</type>
            <size>8923</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQwNDQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZGYxNWY3OTgxMzk0NTY1ZTU0ZjVjZWY5Y2ViOGVlMWM1ZDNjZWZmLi5jYWJmMTQ3NmU3MmFlOWE3
MGMxOTRjNjYxMDQxZDdiYThmNTM5Mjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAxOS0wMS0yNCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIHN0cmVzcy9jb25zdC1zZW1hbnRpY3MuanMgZmFpbHMgYSBkZmctZWFnZXIg
LyBmdGwtZWFnZXIgcnVuIHdpdGggYW4gQVNBTiByZWxlYXNlIGJ1aWxkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwNjkzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSklUU3R1YlJvdXRpbmUncyBmaWVs
ZHMgYXJlIG1hcmtlZCBvbmx5IHdoZW4gSklUU3R1YlJvdXRpbmU6Om1fbWF5QmVFeGVjdXRpbmcg
aXMgdHJ1ZS4KKyAgICAgICAgVGhpcyBiZWNvbWVzIHRydWUgd2hlbiB3ZSBmaW5kIHRoZSBleGVj
dXRhYmxlIGFkZHJlc3MgaW4gb3VyIGNvbnNlcnZhdGl2ZSByb290cywgd2hpY2gKKyAgICAgICAg
bWVhbnMgdGhhdCB3ZSBjb3VsZCBiZSBleGVjdXRpbmcgaXQgcmlnaHQgbm93LiBUaGlzIG1lYW5z
IHRoYXQgb2JqZWN0IGxpdmVuZXNzIGluCisgICAgICAgIEpJVFN0dWJSb3V0aW5lIGRlcGVuZHMg
b24gdGhlIGluZm9ybWF0aW9uIGdhdGhlcmVkIGluIENvbnNlcnZhdGl2ZVJvb3RzLiBIb3dldmVy
LCBvdXIKKyAgICAgICAgY29uc3RyYWludHMgYXJlIHNlcGFyYXRlZCwgIkNvbnNlcnZhdGl2ZSBT
Y2FuIiBhbmQgIkpJVCBTdHViIFJvdXRpbmVzIi4gVGhleSBjYW4gZXZlbgorICAgICAgICBiZSBl
eGVjdXRlZCBjb25jdXJyZW50bHksIHNvIHRoYXQgIkpJVCBTdHViIFJvdXRpbmVzIiBtYXkgbWlz
cyB0byBtYXJrIHRoZSBhY3R1YWxseQorICAgICAgICBleGVjdXRpbmcgSklUU3R1YlJvdXRpbmUg
YmVjYXVzZSAiQ29uc2VydmF0aXZlIFNjYW4iIGZpbmRzIGl0IGxhdGVyLgorICAgICAgICBXaGVu
IGZpbmFsaXppbmcgdGhlIEdDLCB3ZSBkZWxldGUgdGhlIGRlYWQgSklUU3R1YlJvdXRpbmVzLiBB
dCB0aGF0IHRpbWUsIHNpbmNlCisgICAgICAgICJDb25zZXJ2YXRpdmUgU2NhbiIgYWxyZWFkeSBm
aW5pc2hlcywgd2UgZG8gbm90IGRlbGV0ZSBzb21lIEpJVFN0dWJSb3V0aW5lcyB3aGljaCBkbyBu
b3QKKyAgICAgICAgbWFyayB0aGUgZGVwZW5kaW5nIG9iamVjdHMuIFRoZW4sIGluIHRoZSBuZXh0
IGN5Y2xlLCB3ZSBmaW5kIEpJVFN0dWJSb3V0aW5lcyBzdGlsbCBsaXZlLAorICAgICAgICBhdHRl
bXB0IHRvIG1hcmsgdGhlIGRlcGVuZGluZyBvYmplY3RzLCBhbmQgZW5jb3VudGVyIHRoZSBkZWFk
IG9iamVjdHMgd2hpY2ggYXJlIGNvbGxlY3RlZAorICAgICAgICBpbiB0aGUgcHJldmlvdXMgY3lj
bGVzLgorCisgICAgICAgIFRoaXMgcGF0Y2ggcmVtb3ZlcyAiSklUIFN0dWIgUm91dGluZXMiIGFu
ZCBtZXJnZSBpdCB0byAiQ29uc2VydmF0aXZlIFNjYW4iLiBTaW5jZQorICAgICAgICAiQ29uc2Vy
dmF0aXZlIFNjYW4iIGFuZCAiSklUIFN0dWIgUm91dGluZXMiIG5lZWQgdG8gYmUgZXhlY3V0ZWQg
b25seSB3aGVuIHRoZSBleGVjdXRpb24KKyAgICAgICAgaGFwcGVucyAoZW5zdXJlZCBieSBHcmV5
ZWRCeUV4ZWN1dGlvbiBhbmQgQ29sbGVjdGlvblBoYXNlIGNoZWNrKSwgdGhpcyBjaGFuZ2UgaXMg
T0sgZm9yCisgICAgICAgIEdDIHN0b3AgdGltZS4KKworICAgICAgICAqIGhlYXAvQ29uc2VydmF0
aXZlUm9vdHMuaDoKKyAgICAgICAgKEpTQzo6Q29uc2VydmF0aXZlUm9vdHM6OnJvb3RzIGNvbnN0
KToKKyAgICAgICAgKEpTQzo6Q29uc2VydmF0aXZlUm9vdHM6OnJvb3RzKTogRGVsZXRlZC4KKyAg
ICAgICAgKiBoZWFwL0hlYXAuY3BwOgorICAgICAgICAoSlNDOjpIZWFwOjphZGRDb3JlQ29uc3Ry
YWludHMpOgorICAgICAgICAqIGhlYXAvU2xvdFZpc2l0b3IuY3BwOgorICAgICAgICAoSlNDOjpT
bG90VmlzaXRvcjo6YXBwZW5kKToKKyAgICAgICAgKiBoZWFwL1Nsb3RWaXNpdG9yLmg6CisgICAg
ICAgICogaml0L0dDQXdhcmVKSVRTdHViUm91dGluZS5jcHA6CisgICAgICAgIChKU0M6OkdDQXdh
cmVKSVRTdHViUm91dGluZTo6R0NBd2FyZUpJVFN0dWJSb3V0aW5lKToKKyAgICAgICAgKiBqaXQv
R0NBd2FyZUpJVFN0dWJSb3V0aW5lLmg6CisKIDIwMTktMDEtMjQgIEd1aWxsYXVtZSBFbW9udCAg
PGd1aWplbW9udEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIFJlZW5hYmxlIGJhc2VsaW5l
IEpJVCBvbiBtaXBzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db25z
ZXJ2YXRpdmVSb290cy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29uc2VydmF0aXZl
Um9vdHMuaAppbmRleCA4M2U1Y2U0Njk0MjY3YzMxNDNmMDhiNDRiMGE4NjFkZjQ1MGNlMWE2Li4z
YzA2NGE5Yjc3N2IwNmQwNDlmNGZhMDcwNDI3NjRmODlmNmJkZTZhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db25zZXJ2YXRpdmVSb290cy5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL0NvbnNlcnZhdGl2ZVJvb3RzLmgKQEAgLTQyLDcgKzQyLDcgQEAg
Y2xhc3MgQ29uc2VydmF0aXZlUm9vdHMgewogICAgIHZvaWQgYWRkKHZvaWQqIGJlZ2luLCB2b2lk
KiBlbmQsIEpJVFN0dWJSb3V0aW5lU2V0JiwgQ29kZUJsb2NrU2V0Jik7CiAgICAgCiAgICAgc2l6
ZV90IHNpemUoKSBjb25zdDsKLSAgICBIZWFwQ2VsbCoqIHJvb3RzKCk7CisgICAgSGVhcENlbGwq
KiByb290cygpIGNvbnN0OwogCiBwcml2YXRlOgogICAgIHN0YXRpYyBjb25zdCBzaXplX3QgaW5s
aW5lQ2FwYWNpdHkgPSAxMjg7CkBAIC02OCw3ICs2OCw3IEBAIGlubGluZSBzaXplX3QgQ29uc2Vy
dmF0aXZlUm9vdHM6OnNpemUoKSBjb25zdAogICAgIHJldHVybiBtX3NpemU7CiB9CiAKLWlubGlu
ZSBIZWFwQ2VsbCoqIENvbnNlcnZhdGl2ZVJvb3RzOjpyb290cygpCitpbmxpbmUgSGVhcENlbGwq
KiBDb25zZXJ2YXRpdmVSb290czo6cm9vdHMoKSBjb25zdAogewogICAgIHJldHVybiBtX3Jvb3Rz
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcAppbmRleCBkMTY2NzAzN2FjNWNkYzlh
YjEyODYxMzgyMmU4N2RlZTMwMjBmMzA3Li44ZGE3MGRkMDQ0MTFhMzYyNDIzODliM2YyYTgzYTg3
YmQ5NDY5NGRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcApAQCAtMjYyMSwxNSAr
MjYyMSwyMiBAQCB2b2lkIEhlYXA6OmFkZENvcmVDb25zdHJhaW50cygpCiAgICAgICAgICAgICBU
aW1pbmdTY29wZSBwcmVDb252ZXJnZW5jZVRpbWluZ1Njb3BlKCp0aGlzLCAiQ29uc3RyYWludDog
Y29uc2VydmF0aXZlIHNjYW4iKTsKICAgICAgICAgICAgIG1fb2JqZWN0U3BhY2UucHJlcGFyZUZv
ckNvbnNlcnZhdGl2ZVNjYW4oKTsKIAotICAgICAgICAgICAgQ29uc2VydmF0aXZlUm9vdHMgY29u
c2VydmF0aXZlUm9vdHMoKnRoaXMpOwotICAgICAgICAgICAgU3VwZXJTYW1wbGVyU2NvcGUgc3Vw
ZXJTYW1wbGVyU2NvcGUoZmFsc2UpOworICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIENv
bnNlcnZhdGl2ZVJvb3RzIGNvbnNlcnZhdGl2ZVJvb3RzKCp0aGlzKTsKKyAgICAgICAgICAgICAg
ICBTdXBlclNhbXBsZXJTY29wZSBzdXBlclNhbXBsZXJTY29wZShmYWxzZSk7CiAKLSAgICAgICAg
ICAgIGdhdGhlclN0YWNrUm9vdHMoY29uc2VydmF0aXZlUm9vdHMpOwotICAgICAgICAgICAgZ2F0
aGVySlNTdGFja1Jvb3RzKGNvbnNlcnZhdGl2ZVJvb3RzKTsKLSAgICAgICAgICAgIGdhdGhlclNj
cmF0Y2hCdWZmZXJSb290cyhjb25zZXJ2YXRpdmVSb290cyk7CisgICAgICAgICAgICAgICAgZ2F0
aGVyU3RhY2tSb290cyhjb25zZXJ2YXRpdmVSb290cyk7CisgICAgICAgICAgICAgICAgZ2F0aGVy
SlNTdGFja1Jvb3RzKGNvbnNlcnZhdGl2ZVJvb3RzKTsKKyAgICAgICAgICAgICAgICBnYXRoZXJT
Y3JhdGNoQnVmZmVyUm9vdHMoY29uc2VydmF0aXZlUm9vdHMpOwogCi0gICAgICAgICAgICBTZXRS
b290TWFya1JlYXNvblNjb3BlIHJvb3RTY29wZShzbG90VmlzaXRvciwgU2xvdFZpc2l0b3I6OlJv
b3RNYXJrUmVhc29uOjpDb25zZXJ2YXRpdmVTY2FuKTsKLSAgICAgICAgICAgIHNsb3RWaXNpdG9y
LmFwcGVuZChjb25zZXJ2YXRpdmVSb290cyk7CisgICAgICAgICAgICAgICAgU2V0Um9vdE1hcmtS
ZWFzb25TY29wZSByb290U2NvcGUoc2xvdFZpc2l0b3IsIFNsb3RWaXNpdG9yOjpSb290TWFya1Jl
YXNvbjo6Q29uc2VydmF0aXZlU2Nhbik7CisgICAgICAgICAgICAgICAgc2xvdFZpc2l0b3IuYXBw
ZW5kKGNvbnNlcnZhdGl2ZVJvb3RzKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAvLyBKSVRTdHViUm91dGluZXMgbXVzdCBiZSB2aXNpdGVkIGFmdGVyIHNj
YW5uaW5nIENvbnNlcnZhdGl2ZVJvb3RzIHNpbmNlIEpJVFN0dWJSb3V0aW5lcyBkZXBlbmQgb24g
dGhlIGhvb2sgZXhlY3V0ZWQgZHVyaW5nIGdhdGhlcmluZyBDb25zZXJ2YXRpdmVSb290cy4KKyAg
ICAgICAgICAgICAgICBTZXRSb290TWFya1JlYXNvblNjb3BlIHJvb3RTY29wZShzbG90VmlzaXRv
ciwgU2xvdFZpc2l0b3I6OlJvb3RNYXJrUmVhc29uOjpKSVRTdHViUm91dGluZXMpOworICAgICAg
ICAgICAgICAgIG1faml0U3R1YlJvdXRpbmVzLT50cmFjZU1hcmtlZFN0dWJSb3V0aW5lcyhzbG90
VmlzaXRvcik7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGxhc3RW
ZXJzaW9uID0gbV9waGFzZVZlcnNpb247CiAgICAgICAgIH0sCkBAIC0yNjk2LDE0ICsyNzAzLDYg
QEAgdm9pZCBIZWFwOjphZGRDb3JlQ29uc3RyYWludHMoKQogICAgICAgICB9LAogICAgICAgICBD
b25zdHJhaW50Vm9sYXRpbGl0eTo6R3JleWVkQnlFeGVjdXRpb24pOwogICAgIAotICAgIG1fY29u
c3RyYWludFNldC0+YWRkKAotICAgICAgICAiSnNyIiwgIkpJVCBTdHViIFJvdXRpbmVzIiwKLSAg
ICAgICAgW3RoaXNdIChTbG90VmlzaXRvciYgc2xvdFZpc2l0b3IpIHsKLSAgICAgICAgICAgIFNl
dFJvb3RNYXJrUmVhc29uU2NvcGUgcm9vdFNjb3BlKHNsb3RWaXNpdG9yLCBTbG90VmlzaXRvcjo6
Um9vdE1hcmtSZWFzb246OkpJVFN0dWJSb3V0aW5lcyk7Ci0gICAgICAgICAgICBtX2ppdFN0dWJS
b3V0aW5lcy0+dHJhY2VNYXJrZWRTdHViUm91dGluZXMoc2xvdFZpc2l0b3IpOwotICAgICAgICB9
LAotICAgICAgICBDb25zdHJhaW50Vm9sYXRpbGl0eTo6R3JleWVkQnlFeGVjdXRpb24pOwotICAg
IAogICAgIG1fY29uc3RyYWludFNldC0+YWRkKAogICAgICAgICAiV3MiLCAiV2VhayBTZXRzIiwK
ICAgICAgICAgW3RoaXNdIChTbG90VmlzaXRvciYgc2xvdFZpc2l0b3IpIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcAppbmRleCAxZDBiZDEwYTlmYWE4NDhlNjAy
NTRkNzk4NTMzNWEzMzAwNmU1MzY1Li41OTA4Mjk2NmJmMDc4ZGIxYjc0NWI3NTdlNWNkMzNhMTdi
OTc3ZDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9TbG90VmlzaXRv
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCkBA
IC0xMzQsNyArMTM0LDcgQEAgdm9pZCBTbG90VmlzaXRvcjo6Y2xlYXJNYXJrU3RhY2tzKCkKICAg
ICAgICAgfSk7CiB9CiAKLXZvaWQgU2xvdFZpc2l0b3I6OmFwcGVuZChDb25zZXJ2YXRpdmVSb290
cyYgY29uc2VydmF0aXZlUm9vdHMpCit2b2lkIFNsb3RWaXNpdG9yOjphcHBlbmQoY29uc3QgQ29u
c2VydmF0aXZlUm9vdHMmIGNvbnNlcnZhdGl2ZVJvb3RzKQogewogICAgIEhlYXBDZWxsKiogcm9v
dHMgPSBjb25zZXJ2YXRpdmVSb290cy5yb290cygpOwogICAgIHNpemVfdCBzaXplID0gY29uc2Vy
dmF0aXZlUm9vdHMuc2l6ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hl
YXAvU2xvdFZpc2l0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9y
LmgKaW5kZXggMGQyZTZlMGFhNmZlZjlhOTY2MTZkZmNjOGU1MTFjOTE4MTBiNTQ3Ni4uNzcxMThk
MTg0Y2E4MTY3YzA0NjY2Y2MyMDc4MDI1OTllYzRkMzg0YSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaGVhcC9TbG90VmlzaXRvci5oCkBAIC04Niw3ICs4Niw3IEBAIGNsYXNzIFNsb3RWaXNpdG9y
IHsKICAgICBjb25zdCBWTSYgdm0oKSBjb25zdDsKICAgICBIZWFwKiBoZWFwKCkgY29uc3Q7CiAK
LSAgICB2b2lkIGFwcGVuZChDb25zZXJ2YXRpdmVSb290cyYpOworICAgIHZvaWQgYXBwZW5kKGNv
bnN0IENvbnNlcnZhdGl2ZVJvb3RzJik7CiAgICAgCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVCwg
dHlwZW5hbWUgVHJhaXRzPiB2b2lkIGFwcGVuZChjb25zdCBXcml0ZUJhcnJpZXJCYXNlPFQsIFRy
YWl0cz4mKTsKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSBUcmFpdHM+IHZvaWQg
YXBwZW5kSGlkZGVuKGNvbnN0IFdyaXRlQmFycmllckJhc2U8VCwgVHJhaXRzPiYpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HQ0F3YXJlSklUU3R1YlJvdXRpbmUuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HQ0F3YXJlSklUU3R1YlJvdXRpbmUuY3BwCmlu
ZGV4IDJhYTE3ZjQxNzNlYTJmMmIyZWQ0ODNjNmYyNTAxMjQ4ZWVhNjA1YWUuLjE5NWZmMDJmMzk3
Y2MwMjA3MDFjNWExMGI2YzMwYTYzYzcwMjY5ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvR0NBd2FyZUpJVFN0dWJSb3V0aW5lLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L0dDQXdhcmVKSVRTdHViUm91dGluZS5jcHAKQEAgLTQzLDggKzQzLDYgQEAg
bmFtZXNwYWNlIEpTQyB7CiBHQ0F3YXJlSklUU3R1YlJvdXRpbmU6OkdDQXdhcmVKSVRTdHViUm91
dGluZSgKICAgICBjb25zdCBNYWNyb0Fzc2VtYmxlckNvZGVSZWY8SklUU3R1YlJvdXRpbmVQdHJU
YWc+JiBjb2RlLCBWTSYgdm0pCiAgICAgOiBKSVRTdHViUm91dGluZShjb2RlKQotICAgICwgbV9t
YXlCZUV4ZWN1dGluZyhmYWxzZSkKLSAgICAsIG1faXNKZXR0aXNvbmVkKGZhbHNlKQogewogICAg
IHZtLmhlYXAubV9qaXRTdHViUm91dGluZXMtPmFkZCh0aGlzKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvR0NBd2FyZUpJVFN0dWJSb3V0aW5lLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaml0L0dDQXdhcmVKSVRTdHViUm91dGluZS5oCmluZGV4IGY1ZDBmNjE2
MzY5YTQwODY2NjA0Y2YyNTg1ZThhYmU5NjFhYzU1ODYuLjVkZWRjNmFiOGM5Y2Y5ODg2YmIzMmYy
MTk1YTczNWZjMDc3NGNiZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
R0NBd2FyZUpJVFN0dWJSb3V0aW5lLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9H
Q0F3YXJlSklUU3R1YlJvdXRpbmUuaApAQCAtNjcsOCArNjcsOCBAQCBjbGFzcyBHQ0F3YXJlSklU
U3R1YlJvdXRpbmUgOiBwdWJsaWMgSklUU3R1YlJvdXRpbmUgewogcHJpdmF0ZToKICAgICBmcmll
bmQgY2xhc3MgSklUU3R1YlJvdXRpbmVTZXQ7CiAKLSAgICBib29sIG1fbWF5QmVFeGVjdXRpbmc7
Ci0gICAgYm9vbCBtX2lzSmV0dGlzb25lZDsKKyAgICBib29sIG1fbWF5QmVFeGVjdXRpbmcgeyBm
YWxzZSB9OworICAgIGJvb2wgbV9pc0pldHRpc29uZWQgeyBmYWxzZSB9OwogfTsKIAogLy8gVXNl
IHRoaXMgaWYgeW91IHdhbnQgdG8gbWFyayBvbmUgYWRkaXRpb25hbCBvYmplY3QgZHVyaW5nIEdD
IGlmIHlvdXIgc3R1YgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0No
YW5nZUxvZwppbmRleCBlNDgxOWY4NGUwZTI4OGY0ZWU4ZmM2NDlmZDc3NjRkODk2OWQyN2IyLi5l
MjgzODk4OGFhZDRhNTFkMzRkMWRkODQ0YzA3ODAxZWI2MjJjYjdkIDEwMDY0NAotLS0gYS9KU1Rl
c3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisy
MDE5LTAxLTI0ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAg
c3RyZXNzL2NvbnN0LXNlbWFudGljcy5qcyBmYWlscyBhIGRmZy1lYWdlciAvIGZ0bC1lYWdlciBy
dW4gd2l0aCBhbiBBU0FOIHJlbGVhc2UgYnVpbGQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA2OTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy9yZWdyZXNzLTE5MDY5My5qczogQWRkZWQu
CisgICAgICAgICh0cnV0aCk6CisgICAgICAgIChhc3NlcnQpOgorICAgICAgICAoc2hvdWxkVGhy
b3dJbnZhbGlkQ29uc3RBc3NpZ25tZW50KToKKyAgICAgICAgKHRheik6CisKIDIwMTktMDEtMjQg
IEd1aWxsYXVtZSBFbW9udCAgPGd1aWplbW9udEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0Nd
IFJlZW5hYmxlIGJhc2VsaW5lIEpJVCBvbiBtaXBzCg==
</data>
<flag name="review"
          id="376773"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
      

    </bug>

</bugzilla>