<?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>146478</bug_id>
          
          <creation_ts>2015-06-30 16:05:18 -0700</creation_ts>
          <short_desc>Crash at WebCore::MemoryCache::remove(WebCore::CachedResource&amp;)</short_desc>
          <delta_ts>2015-07-03 09:58:08 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>ap</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1105881</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-06-30 16:05:18 -0700</bug_when>
    <thetext>Flaky crash on webgl/1.0.2/conformance/ogles/GL/floor/floor_001_to_006.html:
Time Awake Since Boot: 820000 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000004

VM Regions Near 0x4:
--&gt; 
    __TEXT                 000000010d9f8000-000000010da96000 [  632K] r-x/rwx SM=COW  /Volumes/VOLUME/*

Application Specific Information:
CRASHING TEST: webgl/1.0.2/conformance/ogles/GL/floor/floor_001_to_006.html

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.JavaScriptCore      	0x000000010dd8640c WTF::StringImpl::length() const + 12
1   com.apple.JavaScriptCore      	0x000000010e82d8e9 bool WTF::equalCommon&lt;WTF::StringImpl, WTF::StringImpl&gt;(WTF::StringImpl const&amp;, WTF::StringImpl const&amp;) + 25
2   com.apple.JavaScriptCore      	0x000000010e8290dd WTF::equal(WTF::StringImpl const&amp;, WTF::StringImpl const&amp;) + 29
3   com.apple.WebCore             	0x000000011288508d WTF::StringHash::equal(WTF::StringImpl const*, WTF::StringImpl const*) + 29 (StringHash.h:48)
4   com.apple.WebCore             	0x0000000112885062 WTF::StringHash::equal(WTF::String const&amp;, WTF::String const&amp;) + 50 (StringHash.h:68)
5   com.apple.WebCore             	0x0000000112b6e882 WebCore::URLHash::equal(WebCore::URL const&amp;, WebCore::URL const&amp;) + 50 (URLHash.h:43)
6   com.apple.WebCore             	0x0000000113dd091d WTF::PairHash&lt;WebCore::URL, WTF::String&gt;::equal(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;, std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 29 (HashFunctions.h:163)
7   com.apple.WebCore             	0x0000000113dd08ed bool WTF::IdentityHashTranslator&lt;WTF::PairHash&lt;WebCore::URL, WTF::String&gt; &gt;::equal&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;, std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 29 (HashTable.h:282)
8   com.apple.WebCore             	0x0000000113dd081c WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt;* WTF::HashTable&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt; &gt;, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashMap&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;, WTF::HashTraits&lt;WebCore::CachedResource*&gt; &gt;::KeyValuePairTraits, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt; &gt;::lookup&lt;WTF::IdentityHashTranslator&lt;WTF::PairHash&lt;WebCore::URL, WTF::String&gt; &gt;, std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 220 (HashTable.h:624)
9   com.apple.WebCore             	0x0000000113dd06ff WTF::HashTableIterator&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt; &gt;, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashMap&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;, WTF::HashTraits&lt;WebCore::CachedResource*&gt; &gt;::KeyValuePairTraits, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt; &gt; WTF::HashTable&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt; &gt;, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashMap&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;, WTF::HashTraits&lt;WebCore::CachedResource*&gt; &gt;::KeyValuePairTraits, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt; &gt;::find&lt;WTF::IdentityHashTranslator&lt;WTF::PairHash&lt;WebCore::URL, WTF::String&gt; &gt;, std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 79 (HashTable.h:939)
10  com.apple.WebCore             	0x0000000113dd06a4 WTF::HashTable&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt;, WTF::KeyValuePairKeyExtractor&lt;WTF::KeyValuePair&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*&gt; &gt;, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashMap&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;, WTF::HashTraits&lt;WebCore::CachedResource*&gt; &gt;::KeyValuePairTraits, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt; &gt;::find(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 36 (HashTable.h:387)
11  com.apple.WebCore             	0x0000000113dd065f WTF::HashMap&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;, WTF::HashTraits&lt;WebCore::CachedResource*&gt; &gt;::find(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 47 (HashMap.h:242)
12  com.apple.WebCore             	0x0000000113dca988 WTF::HashMap&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt;, WebCore::CachedResource*, WTF::PairHash&lt;WebCore::URL, WTF::String&gt;, WTF::HashTraits&lt;std::__1::pair&lt;WebCore::URL, WTF::String&gt; &gt;, WTF::HashTraits&lt;WebCore::CachedResource*&gt; &gt;::remove(std::__1::pair&lt;WebCore::URL, WTF::String&gt; const&amp;) + 40 (HashMap.h:377)
13  com.apple.WebCore             	0x0000000113dc544d WebCore::MemoryCache::remove(WebCore::CachedResource&amp;) + 413 (MemoryCache.cpp:435)
14  com.apple.WebCore             	0x0000000113dc6a95 WebCore::MemoryCache::pruneDeadResourcesToSize(unsigned int) + 1221 (MemoryCache.cpp:395)
15  com.apple.WebCore             	0x0000000113dc65ca WebCore::MemoryCache::pruneDeadResources() + 106 (MemoryCache.cpp:338)
16  com.apple.WebCore             	0x0000000113dc6cef WebCore::MemoryCache::prune() + 47 (MemoryCache.cpp:758)
17  com.apple.WebCore             	0x0000000113dc4725 WebCore::MemoryCache::pruneTimerFired() + 21 (MemoryCache.cpp:765)
18  com.apple.WebCore             	0x0000000113dd3db3 std::__1::__function::__func&lt;std::__1::__bind&lt;void (WebCore::MemoryCache::*&amp;)(), WebCore::MemoryCache*&gt;, std::__1::allocator&lt;std::__1::__bind&lt;void (WebCore::MemoryCache::*&amp;)(), WebCore::MemoryCache*&gt; &gt;, void ()&gt;::operator()() + 259 (functional:1370)
19  com.apple.WebCore             	0x0000000112841aca std::__1::function&lt;void ()&gt;::operator()() const + 26 (functional:1756)
20  com.apple.WebCore             	0x0000000112841a7c WebCore::Timer::fired() + 28 (Timer.h:134)
21  com.apple.WebCore             	0x00000001147c5b6e WebCore::ThreadTimers::sharedTimerFiredInternal() + 398 (ThreadTimers.cpp:135)
22  com.apple.WebCore             	0x00000001147c5829 WebCore::ThreadTimers::sharedTimerFired() + 25 (ThreadTimers.cpp:108)
23  com.apple.WebCore             	0x00000001144773b2 WebCore::timerFired(__CFRunLoopTimer*, void*) + 34 (SharedTimerCF.cpp:82)
24  com.apple.CoreFoundation      	0x00007fff961172e4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
25  com.apple.CoreFoundation      	0x00007fff96116f73 __CFRunLoopDoTimer + 1059
26  com.apple.CoreFoundation      	0x00007fff9618a53d __CFRunLoopDoTimers + 301
27  com.apple.CoreFoundation      	0x00007fff960d2608 __CFRunLoopRun + 2024
28  com.apple.CoreFoundation      	0x00007fff960d1bd8 CFRunLoopRunSpecific + 296
29  DumpRenderTree                	0x000000010da16818 runTest(std::__1::basic_string&lt;char, std::__1::char_traits&lt;char&gt;, std::__1::allocator&lt;char&gt; &gt; const&amp;) + 6536 (DumpRenderTree.mm:2012)
30  DumpRenderTree                	0x000000010da14e2a runTestingServerLoop() + 330 (DumpRenderTree.mm:1176)
31  DumpRenderTree                	0x000000010da143a0 dumpRenderTree(int, char const**) + 448 (DumpRenderTree.mm:1285)
32  DumpRenderTree                	0x000000010da1710d DumpRenderTreeMain(int, char const**) + 125 (DumpRenderTree.mm:1420)
33  DumpRenderTree                	0x000000010da6c722 main + 34 (DumpRenderTreeMain.mm:30)
34  libdyld.dylib                 	0x00007fff9ab6d5c9 start + 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106660</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-07-03 02:09:41 -0700</bug_when>
    <thetext>Is webgl/1.0.2/conformance/ogles/GL/floor/floor_001_to_006.html the culprit, or is it some other test that leaves the cache in a broken state?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106722</commentid>
    <comment_count>2</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-07-03 09:58:08 -0700</bug_when>
    <thetext>This is a crash when pruning the memory cache it is likely unrelated to this particular test. It looks like we have a bug in the memory cache implementation.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>