<?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>229635</bug_id>
          
          <creation_ts>2021-08-27 16:35:27 -0700</creation_ts>
          <short_desc>ThreadSanitizer: data race reading/writing key count for WTF::HashTable&lt;&gt; in WebKit::RemoteRenderingBackend object</short_desc>
          <delta_ts>2021-08-28 18:46:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1788223</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2021-08-27 16:35:27 -0700</bug_when>
    <thetext>ThreadSanitizer: data race reading/writing key count for WTF::HashTable&lt;&gt; in WebKit::RemoteRenderingBackend object.

In the TSAn report below, the main thread is trying to read WTF::HashTable&lt;&gt;::keyCount() but a background thread is calling WTF::HashTable&lt;&gt;::setKeyCount(), which means that this method in Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp could return an incorrect value for m_remoteResourceCache.imageBuffers().isEmpty():

bool RemoteRenderingBackend::allowsExitUnderMemoryPressure() const
{
    return m_remoteResourceCache.imageBuffers().isEmpty() &amp;&amp; m_remoteResourceCache.nativeImages().isEmpty();
}

==================
WARNING: ThreadSanitizer: data race (pid=4134)
  Read of size 4 at 0x7b24000083a4 by main thread:
    #0 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::keyCount() const &lt;null&gt; (WebKit:x86_64+0x9172aa)
    #1 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::isEmpty() const &lt;null&gt; (WebKit:x86_64+0x917269)
    #2 WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::isEmpty() const &lt;null&gt; (WebKit:x86_64+0x8b5579)
    #3 WebKit::RemoteRenderingBackend::allowsExitUnderMemoryPressure() const &lt;null&gt; (WebKit:x86_64+0x8a67c5)
    #4 WebKit::GPUConnectionToWebProcess::allowsExitUnderMemoryPressure() const &lt;null&gt; (WebKit:x86_64+0x8a6406)
    #5 WebKit::GPUProcess::canExitUnderMemoryPressure() const &lt;null&gt; (WebKit:x86_64+0x8ab1f4)
    #6 WebKit::GPUProcess::tryExitIfUnused() &lt;null&gt; (WebKit:x86_64+0x8aa500)
    #7 WebKit::GPUProcess::lowMemoryHandler(WTF::Critical, WTF::Synchronous) &lt;null&gt; (WebKit:x86_64+0x8ab6ca)
    #8 WebKit::GPUProcess::initializeGPUProcess(WebKit::GPUProcessCreationParameters&amp;&amp;)::$_3::operator()(WTF::Critical, WTF::Synchronous) const &lt;null&gt; (WebKit:x86_64+0x8d53f1)
    #9 WTF::Detail::CallableWrapper&lt;WebKit::GPUProcess::initializeGPUProcess(WebKit::GPUProcessCreationParameters&amp;&amp;)::$_3, void, WTF::Critical, WTF::Synchronous&gt;::call(WTF::Critical, WTF::Synchronous) &lt;null&gt; (WebKit:x86_64+0x8d537b)
    #10 WTF::Function&lt;void (WTF::Critical, WTF::Synchronous)&gt;::operator()(WTF::Critical, WTF::Synchronous) const &lt;null&gt; (JavaScriptCore:x86_64+0x6c8eb)
    #11 WTF::MemoryPressureHandler::releaseMemory(WTF::Critical, WTF::Synchronous) &lt;null&gt; (JavaScriptCore:x86_64+0x6c319)
    #12 WTF::MemoryPressureHandler::respondToMemoryPressure(WTF::Critical, WTF::Synchronous) &lt;null&gt; (JavaScriptCore:x86_64+0x705fe)
    #13 invocation function for block in WTF::MemoryPressureHandler::install() &lt;null&gt; (JavaScriptCore:x86_64+0x70476)
    #14 __tsan::dispatch_callback_wrap(void*) &lt;null&gt; (libclang_rt.tsan_osx_dynamic.dylib:x86_64+0x734d1)
    #15 _dispatch_client_callout &lt;null&gt; (libdispatch.dylib:x86_64+0x34ff)
    #16 WKXPCServiceMain &lt;null&gt; (WebKit:x86_64+0x225da4e)
    #17 main &lt;null&gt; (com.apple.WebKit.GPU.Development:x86_64+0x100003e3e)

  Previous write of size 4 at 0x7b24000083a4 by thread T17:
    #0 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::setKeyCount(unsigned int) const &lt;null&gt; (WebKit:x86_64+0x9177d9)
    #1 WTF::HashTableAddResult&lt;WTF::HashTableIterator&lt;WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt; &gt; WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::add&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; const&amp;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;&amp;&amp;) &lt;null&gt; (WebKit:x86_64+0x8b5828)
    #2 WebKit::RemoteResourceCache::cacheImageBuffer(WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;&amp;&amp;) &lt;null&gt; (WebKit:x86_64+0x8b017e)
    #3 WebKit::RemoteRenderingBackend::createImageBuffer(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;) &lt;null&gt; (WebKit:x86_64+0x8afd6d)
    #4 void IPC::callMemberFunctionImpl&lt;WebKit::RemoteRenderingBackend, void (WebKit::RemoteRenderingBackend::*)(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;), std::__1::tuple&lt;WebCore::FloatSize, WebCore::RenderingMode, float, WebCore::DestinationColorSpace, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, 0ul, 1ul, 2ul, 3ul, 4ul, 5ul&gt;(WebKit::RemoteRenderingBackend*, void (WebKit::RemoteRenderingBackend::*)(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;), std::__1::tuple&lt;WebCore::FloatSize, WebCore::RenderingMode, float, WebCore::DestinationColorSpace, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;&amp;&amp;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul, 5ul&gt;) &lt;null&gt; (WebKit:x86_64+0x854acf)
    #5 void IPC::callMemberFunction&lt;WebKit::RemoteRenderingBackend, void (WebKit::RemoteRenderingBackend::*)(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;), std::__1::tuple&lt;WebCore::FloatSize, WebCore::RenderingMode, float, WebCore::DestinationColorSpace, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul, 2ul, 3ul, 4ul, 5ul&gt; &gt;(std::__1::tuple&lt;WebCore::FloatSize, WebCore::RenderingMode, float, WebCore::DestinationColorSpace, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;&amp;&amp;, WebKit::RemoteRenderingBackend*, void (WebKit::RemoteRenderingBackend::*)(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;)) &lt;null&gt; (WebKit:x86_64+0x84f298)
    #6 void IPC::handleMessage&lt;Messages::RemoteRenderingBackend::CreateImageBuffer, WebKit::RemoteRenderingBackend, void (WebKit::RemoteRenderingBackend::*)(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;)&gt;(IPC::Decoder&amp;, WebKit::RemoteRenderingBackend*, void (WebKit::RemoteRenderingBackend::*)(WebCore::FloatSize const&amp;, WebCore::RenderingMode, float, WebCore::DestinationColorSpace const&amp;, WebCore::PixelFormat, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;)) &lt;null&gt; (WebKit:x86_64+0x838062)
    #7 WebKit::RemoteRenderingBackend::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) &lt;null&gt; (WebKit:x86_64+0x837e2c)
    #8 non-virtual thunk to WebKit::RemoteRenderingBackend::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) &lt;null&gt; (WebKit:x86_64+0x8385d4)
    #9 IPC::Connection::dispatchMessageReceiverMessage(IPC::MessageReceiver&amp;, std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;&amp;&amp;) &lt;null&gt; (WebKit:x86_64+0x8fbb1)
    #10 IPC::WorkQueueMessageReceiverQueue::enqueueMessage(IPC::Connection&amp;, std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;&amp;&amp;)::&apos;lambda&apos;()::operator()() &lt;null&gt; (WebKit:x86_64+0x9730e)
    #11 WTF::Detail::CallableWrapper&lt;IPC::WorkQueueMessageReceiverQueue::enqueueMessage(IPC::Connection&amp;, std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;&amp;&amp;)::&apos;lambda&apos;(), void&gt;::call() &lt;null&gt; (WebKit:x86_64+0x970ed)
    #12 WTF::Function&lt;void ()&gt;::operator()() const &lt;null&gt; (JavaScriptCore:x86_64+0x2805d)
    #13 WTF::(anonymous namespace)::DispatchWorkItem::operator()() &lt;null&gt; (JavaScriptCore:x86_64+0x11846d)
    #14 void WTF::dispatchWorkItem&lt;WTF::(anonymous namespace)::DispatchWorkItem&gt;(void*) &lt;null&gt; (JavaScriptCore:x86_64+0x117459)
    #15 __tsan::dispatch_callback_wrap(void*) &lt;null&gt; (libclang_rt.tsan_osx_dynamic.dylib:x86_64+0x734d1)
    #16 _dispatch_client_callout &lt;null&gt; (libdispatch.dylib:x86_64+0x34ff)

  Location is heap block of size 144 at 0x7b24000083a0 allocated by thread T17:
    #0 __sanitizer_mz_malloc &lt;null&gt; (libclang_rt.tsan_osx_dynamic.dylib:x86_64+0x5168a)
    #1 _malloc_zone_malloc &lt;null&gt; (libsystem_malloc.dylib:x86_64+0x1cf80)
    #2 bmalloc::Cache::allocateSlowCaseNullCache(bmalloc::HeapKind, unsigned long) &lt;null&gt; (JavaScriptCore:x86_64+0x122e50)
    #3 bmalloc::Cache::allocate(bmalloc::HeapKind, unsigned long) &lt;null&gt; (JavaScriptCore:x86_64+0x394c9)
    #4 WTF::fastMalloc(unsigned long) &lt;null&gt; (JavaScriptCore:x86_64+0x38cfb)
    #5 WTF::fastZeroedMalloc(unsigned long) &lt;null&gt; (JavaScriptCore:x86_64+0x38cba)
    #6 WTF::FastMalloc::zeroedMalloc(unsigned long) &lt;null&gt; (WebKit:x86_64+0x1f499)
    #7 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::allocateTable(unsigned int) &lt;null&gt; (WebKit:x86_64+0x917a5f)
    #8 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::rehash(unsigned int, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;*) &lt;null&gt; (WebKit:x86_64+0x917914)
    #9 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::shrink() &lt;null&gt; (WebKit:x86_64+0x91c077)
    #10 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::remove(WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;*) &lt;null&gt; (WebKit:x86_64+0x91bfb7)
    #11 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::removeAndInvalidateWithoutEntryConsistencyCheck(WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;*) &lt;null&gt; (WebKit:x86_64+0x91bf48)
    #12 WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;::removeWithoutEntryConsistencyCheck(WTF::HashTableIterator&lt;WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;, WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;) &lt;null&gt; (WebKit:x86_64+0x91be93)
    #13 WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::remove(WTF::HashTableIteratorAdapter&lt;WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;) &lt;null&gt; (WebKit:x86_64+0x91bd42)
    #14 WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::HashTableTraits&gt;::remove(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; const&amp;) &lt;null&gt; (WebKit:x86_64+0x8b62bf)
    #15 WebKit::RemoteResourceCache::maybeRemoveResource(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::HashTableIteratorAdapter&lt;WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WebKit::RemoteResourceCache::ResourceUseCounter&gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WebKit::RemoteResourceCache::ResourceUseCounter&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WebKit::RemoteResourceCache::ResourceUseCounter, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WebKit::RemoteResourceCache::ResourceUseCounter&gt;, WTF::HashTableTraits&gt;::KeyValuePairTraits, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt; &gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WebKit::RemoteResourceCache::ResourceUseCounter&gt; &gt;&amp;) &lt;null&gt; (WebKit:x86_64+0x8b616c)
    #16 WebKit::RemoteResourceCache::releaseRemoteResource(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long) &lt;null&gt; (WebKit:x86_64+0x8b3acf)
    #17 WebKit::RemoteRenderingBackend::releaseRemoteResource(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long) &lt;null&gt; (WebKit:x86_64+0x8b394b)
    #18 void IPC::callMemberFunctionImpl&lt;WebKit::RemoteRenderingBackend, void (WebKit::RemoteRenderingBackend::*)(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long), std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long&gt;, 0ul, 1ul&gt;(WebKit::RemoteRenderingBackend*, void (WebKit::RemoteRenderingBackend::*)(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long), std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long&gt;&amp;&amp;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul&gt;) &lt;null&gt; (WebKit:x86_64+0x85c64e)
    #19 void IPC::callMemberFunction&lt;WebKit::RemoteRenderingBackend, void (WebKit::RemoteRenderingBackend::*)(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long), std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long&gt;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul&gt; &gt;(std::__1::tuple&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long&gt;&amp;&amp;, WebKit::RemoteRenderingBackend*, void (WebKit::RemoteRenderingBackend::*)(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long)) &lt;null&gt; (WebKit:x86_64+0x85ba98)
    #20 void IPC::handleMessage&lt;Messages::RemoteRenderingBackend::ReleaseRemoteResource, WebKit::RemoteRenderingBackend, void (WebKit::RemoteRenderingBackend::*)(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long)&gt;(IPC::Decoder&amp;, WebKit::RemoteRenderingBackend*, void (WebKit::RemoteRenderingBackend::*)(WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, unsigned long long)) &lt;null&gt; (WebKit:x86_64+0x8384c2)
    #21 WebKit::RemoteRenderingBackend::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) &lt;null&gt; (WebKit:x86_64+0x837f61)
    #22 non-virtual thunk to WebKit::RemoteRenderingBackend::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;) &lt;null&gt; (WebKit:x86_64+0x8385d4)
    #23 IPC::Connection::dispatchMessageReceiverMessage(IPC::MessageReceiver&amp;, std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;&amp;&amp;) &lt;null&gt; (WebKit:x86_64+0x8fbb1)
    #24 IPC::WorkQueueMessageReceiverQueue::enqueueMessage(IPC::Connection&amp;, std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;&amp;&amp;)::&apos;lambda&apos;()::operator()() &lt;null&gt; (WebKit:x86_64+0x9730e)
    #25 WTF::Detail::CallableWrapper&lt;IPC::WorkQueueMessageReceiverQueue::enqueueMessage(IPC::Connection&amp;, std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;&amp;&amp;)::&apos;lambda&apos;(), void&gt;::call() &lt;null&gt; (WebKit:x86_64+0x970ed)
    #26 WTF::Function&lt;void ()&gt;::operator()() const &lt;null&gt; (JavaScriptCore:x86_64+0x2805d)
    #27 WTF::(anonymous namespace)::DispatchWorkItem::operator()() &lt;null&gt; (JavaScriptCore:x86_64+0x11846d)
    #28 void WTF::dispatchWorkItem&lt;WTF::(anonymous namespace)::DispatchWorkItem&gt;(void*) &lt;null&gt; (JavaScriptCore:x86_64+0x117459)
    #29 __tsan::dispatch_callback_wrap(void*) &lt;null&gt; (libclang_rt.tsan_osx_dynamic.dylib:x86_64+0x734d1)
    #30 _dispatch_client_callout &lt;null&gt; (libdispatch.dylib:x86_64+0x34ff)

  Thread T17 (tid=21827517, running) is a GCD worker thread

SUMMARY: ThreadSanitizer: data race (WebKitBuild/WebKit.framework/Versions/A/WebKit:x86_64+0x9172aa) in WTF::HashTable&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt; &gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashMap&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt;, WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCore::ImageBuffer&gt; &gt;, WTF::DefaultHash&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::ObjectIdentifier&lt;WebCore::RenderingResourceIdentifierType&gt; &gt;, WTF::HashTraits&lt;WTF::Ref&lt;WebCore::ImageBuffer, WTF::RawPtrTraits&lt;WebCor
==================</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788224</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-27 16:35:55 -0700</bug_when>
    <thetext>&lt;rdar://problem/82459484&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788225</commentid>
    <comment_count>2</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2021-08-27 16:37:02 -0700</bug_when>
    <thetext>I&apos;m not familiar with this code, so don&apos;t plan to work on this right now (so anyone can feel free to take it).

I&apos;m also not sure if RemoteRenderingBackend::allowsExitUnderMemoryPressure() is just a &quot;best effort&quot; count and doesn&apos;t need to be exact.  If that&apos;s the case, this may simply be a not-to-be-fixed bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788259</commentid>
    <comment_count>3</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2021-08-27 18:23:50 -0700</bug_when>
    <thetext>Occurred with these layout tests:

    fast/canvas/canvas-blending-image-over-color.html
    fast/canvas/canvas-composite-canvas.html
    fast/canvas/canvas-context-save-limit.html
    fast/canvas/canvas-getImageData-largeNonintegralDimensions.html
    fast/canvas/draw-focus-if-needed-null-element.html</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>