When attempting to load the thread in the URL, Safari's WebProcess will hang with 100% CPU usage on a single core. This is on Lion, Safari 5.1. Change seems to have occurred between r95201 and r95358. Here is a sample from the process. Perhaps the issue is in WebCore::RenderLayer? Call graph: 2553 Thread_666882 DispatchQueue_1: com.apple.main-thread (serial) + 2553 start (in WebProcess) + 52 [0x103897d64] + 2553 main (in WebProcess) + 234 [0x103897e56] + 2553 WebKitMain (in WebKit2) + 268 [0x103a3797c] + 2553 WebKit::WebProcessMain(WebKit::CommandLine const&) (in WebKit2) + 587 [0x103a62bf9] + 2553 RunLoop::run() (in WebKit2) + 125 [0x103a1cf2b] + 2553 -[NSApplication run] (in AppKit) + 470 [0x7fff8c9cd5bd] + 2553 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (in AppKit) + 135 [0x7fff8c9d0c85] + 2553 _DPSNextEvent (in AppKit) + 659 [0x7fff8c9d1381] + 2553 BlockUntilNextEventMatchingListInMode (in HIToolbox) + 62 [0x7fff8a0444ca] + 2553 ReceiveNextEventCommon (in HIToolbox) + 355 [0x7fff8a04463d] + 2553 RunCurrentEventLoopInMode (in HIToolbox) + 277 [0x7fff8a03d3d3] + 2553 CFRunLoopRunSpecific (in CoreFoundation) + 230 [0x7fff90560c16] + 2553 __CFRunLoopRun (in CoreFoundation) + 1617 [0x7fff905615a1] + 2553 __CFRunLoopDoTimer (in CoreFoundation) + 534 [0x7fff90580c36] + 2553 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ (in CoreFoundation) + 20 [0x7fff905810e4] + 2553 RunLoop::TimerBase::timerFired(__CFRunLoopTimer*, void*) (in WebKit2) + 77 [0x103a1cd85] + 2553 WebKit::DrawingAreaImpl::display() (in WebKit2) + 189 [0x103ad5ebb] + 2553 WebKit::DrawingAreaImpl::display(WebKit::UpdateInfo&) (in WebKit2) + 1000 [0x103ad595e] + 2553 WebKit::WebPage::drawRect(WebCore::GraphicsContext&, WebCore::IntRect const&) (in WebKit2) + 145 [0x103a3c15f] + 2553 WebCore::ScrollView::paint(WebCore::GraphicsContext*, WebCore::IntRect const&) (in WebCore) + 559 [0x1048d01f1] + 2553 WebCore::FrameView::paintContents(WebCore::GraphicsContext*, WebCore::IntRect const&) (in WebCore) + 624 [0x1042b8090] + 2553 WebCore::RenderLayer::paint(WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*) (in WebCore) + 71 [0x1047fa661] + 2553 WebCore::RenderLayer::paintLayer(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*, WTF::HashMap<WebCore::OverlapTestRequestClient*, WebCore::IntRect, WTF::PtrHash<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::IntRect> >*, unsigned int) (in WebCore) + 4159 [0x1047f98fb] + 2553 WebCore::RenderLayer::paintLayer(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*, WTF::HashMap<WebCore::OverlapTestRequestClient*, WebCore::IntRect, WTF::PtrHash<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::IntRect> >*, unsigned int) (in WebCore) + 4159 [0x1047f98fb] + 2553 WebCore::RenderLayer::paintLayer(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*, WTF::HashMap<WebCore::OverlapTestRequestClient*, WebCore::IntRect, WTF::PtrHash<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::IntRect> >*, unsigned int) (in WebCore) + 4159 [0x1047f98fb] + 2553 WebCore::RenderLayer::paintLayer(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*, WTF::HashMap<WebCore::OverlapTestRequestClient*, WebCore::IntRect, WTF::PtrHash<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::IntRect> >*, unsigned int) (in WebCore) + 4159 [0x1047f98fb] + 2553 WebCore::RenderLayer::paintLayer(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*, WTF::HashMap<WebCore::OverlapTestRequestClient*, WebCore::IntRect, WTF::PtrHash<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::IntRect> >*, unsigned int) (in WebCore) + 4159 [0x1047f98fb] + 2553 WebCore::RenderLayer::paintLayer(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, unsigned int, WebCore::RenderObject*, WTF::HashMap<WebCore::OverlapTestRequestClient*, WebCore::IntRect, WTF::PtrHash<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::OverlapTestRequestClient*>, WTF::HashTraits<WebCore::IntRect> >*, unsigned int) (in WebCore) + 2682 [0x1047f9336] + 1671 WebCore::RenderLayer::clipToRect(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, WebCore::ClipRect const&, WebCore::BorderRadiusClippingRule) (in WebCore) + 215 [0x1047f50c9] + ! 1671 WebCore::RenderView::containingBlock() const (in WebCore) + 0,7 [0x10488ba60,0x10488ba67] + 882 WebCore::RenderLayer::clipToRect(WebCore::RenderLayer*, WebCore::GraphicsContext*, WebCore::IntRect const&, WebCore::ClipRect const&, WebCore::BorderRadiusClippingRule) (in WebCore) + 206,215 [0x1047f50c0,0x1047f50c9] 2553 Thread_666888 DispatchQueue_2: com.apple.libdispatch-manager (serial) + 2553 _dispatch_mgr_thread (in libdispatch.dylib) + 54 [0x7fff8be6a14e] + 2553 _dispatch_mgr_invoke (in libdispatch.dylib) + 923 [0x7fff8be6b5be] + 2553 kevent (in libsystem_kernel.dylib) + 10 [0x7fff897ea7e6] 2553 Thread_667020: JavaScriptCore::BlockFree + 2553 thread_start (in libsystem_c.dylib) + 13 [0x7fff8ed15b75] + 2553 _pthread_start (in libsystem_c.dylib) + 335 [0x7fff8ed128bf] + 2553 JSC::Heap::blockFreeingThreadStartFunc(void*) (in JavaScriptCore) + 9 [0x103f0c769] + 2553 JSC::Heap::blockFreeingThreadMain() (in JavaScriptCore) + 300 [0x103f0c72c] + 2553 WTF::ThreadCondition::timedWait(WTF::Mutex&, double) (in JavaScriptCore) + 151 [0x103ed9387] + 2553 _pthread_cond_wait (in libsystem_c.dylib) + 840 [0x7fff8ed16274] + 2553 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff897e9bca] 2553 Thread_667021: com.apple.NSURLConnectionLoader + 2553 thread_start (in libsystem_c.dylib) + 13 [0x7fff8ed15b75] + 2553 _pthread_start (in libsystem_c.dylib) + 335 [0x7fff8ed128bf] + 2553 __NSThread__main__ (in Foundation) + 1575 [0x7fff87b51e9e] + 2553 -[NSThread main] (in Foundation) + 68 [0x7fff87b51f26] + 2553 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] (in Foundation) + 335 [0x7fff87b5d7d3] + 2553 CFRunLoopRunSpecific (in CoreFoundation) + 230 [0x7fff90560c16] + 2553 __CFRunLoopRun (in CoreFoundation) + 1204 [0x7fff90561404] + 2553 __CFRunLoopServiceMachPort (in CoreFoundation) + 188 [0x7fff90558c9c] + 2553 mach_msg (in libsystem_kernel.dylib) + 73 [0x7fff897e7d71] + 2553 mach_msg_trap (in libsystem_kernel.dylib) + 10 [0x7fff897e867a] 2553 Thread_667286: com.apple.CFSocket.private 2553 thread_start (in libsystem_c.dylib) + 13 [0x7fff8ed15b75] 2553 _pthread_start (in libsystem_c.dylib) + 335 [0x7fff8ed128bf] 2553 __CFSocketManager (in CoreFoundation) + 1355 [0x7fff905aa13b] 2553 __select (in libsystem_kernel.dylib) + 10 [0x7fff897e9df2]
I've also noticed extremely high CPU usage on the failblog family of sites, but their traces aren't similar, so I don't know if it's related.
*** Bug 68317 has been marked as a duplicate of this bug. ***
A dupe of this provides the following steps: 1) Load <http://twitter.com/> and log in. 2) Click on a tweet in the feed. At this point the web process will hang rather than revealing the tweet plus other details in the right side of the page.
This started with r95239.
<rdar://problem/10142722>
*** Bug 68326 has been marked as a duplicate of this bug. ***
http://crbug.com/97079
Created attachment 108045 [details] Patch
Comment on attachment 108045 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=108045&action=review > LayoutTests/fast/clip/overflow-border-radius-fixed-position.html:5 > +<div style="width:100px;height:100px;position:fixed;overflow:hidden;-webkit-border-radius:12px"> Why the prefixed border-radius? Maybe make it 30% so it's more pronounced.
Fixed in r95567.