WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
131901
REGRESSION(
r167501
): DYEBench times out
https://bugs.webkit.org/show_bug.cgi?id=131901
Summary
REGRESSION(r167501): DYEBench times out
Ryosuke Niwa
Reported
2014-04-19 14:45:49 PDT
Pass:
http://build.webkit.org/builders/Apple%20Mavericks%20Release%20%28Perf%29/builds/1208
Crash:
http://build.webkit.org/builders/Apple%20Mavericks%20Release%20%28Perf%29/builds/1209
Attachments
Add attachment
proposed patch, testcase, etc.
Mark Hahnenberg
Comment 1
2014-04-19 14:57:13 PDT
It'd be nice if DYEBench had crash reports.
Ryosuke Niwa
Comment 2
2014-04-19 16:16:58 PDT
Actually it's just timing out. Bisected the regression locally to a revision between
r167501
and 167502. Since
r167502
is a bmalloc change and bmalloc hasn't been enabled by default, 167501 should be the culprit.
Ryosuke Niwa
Comment 3
2014-04-19 16:58:43 PDT
Looks like everyone is waiting for everyone else. #8 0x000000010a87723a in DumpRenderTreeMain(int, char const**) at /Volumes/Data/webkit/Tools/DumpRenderTree/mac/DumpRenderTree.mm:1258 #9 0x00007fff8bf185fd in start () #10 0x00007fff8bf185fd in start () Thread 3Queue : com.apple.libdispatch-manager (serial) #0 0x00007fff82f61662 in kevent64 () #1 0x00007fff84c8943d in _dispatch_mgr_invoke at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/libdispatch/libdispatch-339.90.1/src/source.c:2278 #2 0x00007fff84c89152 in _dispatch_mgr_thread at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/libdispatch/libdispatch-339.90.1/src/source.c:2307 Thread 4 com.apple.NSURLConnectionLoader#0 0x00007fff82f5ca1a in mach_msg_trap () #1 0x00007fff82f5bd18 in mach_msg at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/xnu/xnu-2422.90.20/libsyscall/mach/mach_msg.c:103 #2 0x00007fff8e317155 in __CFRunLoopServiceMachPort at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/CF/CF-855.14/RunLoop.subproj/CFRunLoop.c:2344 #3 0x00007fff8e316779 in __CFRunLoopRun at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/CF/CF-855.14/RunLoop.subproj/CFRunLoop.c:2556 #4 0x00007fff8e3160b5 in CFRunLoopRunSpecific at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/CF/CF-855.14/RunLoop.subproj/CFRunLoop.c:2770 #5 0x00007fff8c6c7967 in +[NSURLConnection(Loader) _resourceLoadLoop:] at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/Foundation/Foundation-1056.13/URL.subproj/Connection.subproj/NSURLConnection.m:365 #6 0x00007fff8c6c776b in __NSThread__main__ at /SWE/OSX/Views/CabCPU/LaCrosse/Projects/Foundation/Foundation-1056.13/Soil.subproj/NSThread.m:1076 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 5 JavaScriptCore::BlockFree#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010a9e3283 in JSC::BlockAllocator::blockFreeingThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/BlockAllocator.cpp:146 #4 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #5 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #6 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #7 0x00007fff82592fc9 in thread_start () Thread 6 JavaScriptCore::Marking#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010ab399fb in void std::__1::condition_variable::wait<JSC::GCThread::waitForNextPhase()::$_1>(std::__1::unique_lock<std::__1::mutex>&, JSC::GCThread::waitForNextPhase()::$_1) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/../lib/c++/v1/__mutex_base:376 #4 0x000000010ab399f0 in JSC::GCThread::waitForNextPhase() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:80 #5 0x000000010ab39a98 in JSC::GCThread::gcThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:98 #6 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 7 JavaScriptCore::Marking#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010ab399fb in void std::__1::condition_variable::wait<JSC::GCThread::waitForNextPhase()::$_1>(std::__1::unique_lock<std::__1::mutex>&, JSC::GCThread::waitForNextPhase()::$_1) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/../lib/c++/v1/__mutex_base:376 #4 0x000000010ab399f0 in JSC::GCThread::waitForNextPhase() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:80 #5 0x000000010ab39a98 in JSC::GCThread::gcThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:98 #6 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 8 JavaScriptCore::Marking#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010ab399fb in void std::__1::condition_variable::wait<JSC::GCThread::waitForNextPhase()::$_1>(std::__1::unique_lock<std::__1::mutex>&, JSC::GCThread::waitForNextPhase()::$_1) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/../lib/c++/v1/__mutex_base:376 #4 0x000000010ab399f0 in JSC::GCThread::waitForNextPhase() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:80 #5 0x000000010ab39a98 in JSC::GCThread::gcThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:98 #6 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 9 JavaScriptCore::Marking#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010ab399fb in void std::__1::condition_variable::wait<JSC::GCThread::waitForNextPhase()::$_1>(std::__1::unique_lock<std::__1::mutex>&, JSC::GCThread::waitForNextPhase()::$_1) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/../lib/c++/v1/__mutex_base:376 #4 0x000000010ab399f0 in JSC::GCThread::waitForNextPhase() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:80 #5 0x000000010ab39a98 in JSC::GCThread::gcThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:98 #6 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 10 JavaScriptCore::Marking#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010ab399fb in void std::__1::condition_variable::wait<JSC::GCThread::waitForNextPhase()::$_1>(std::__1::unique_lock<std::__1::mutex>&, JSC::GCThread::waitForNextPhase()::$_1) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/../lib/c++/v1/__mutex_base:376 #4 0x000000010ab399f0 in JSC::GCThread::waitForNextPhase() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:80 #5 0x000000010ab39a98 in JSC::GCThread::gcThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:98 #6 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 11 JavaScriptCore::Marking#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x00007fff8f98ed43 in std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libcxx/libcxx-120/src/condition_variable.cpp:40 #3 0x000000010ab399fb in void std::__1::condition_variable::wait<JSC::GCThread::waitForNextPhase()::$_1>(std::__1::unique_lock<std::__1::mutex>&, JSC::GCThread::waitForNextPhase()::$_1) [inlined] at /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/../lib/c++/v1/__mutex_base:376 #4 0x000000010ab399f0 in JSC::GCThread::waitForNextPhase() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:80 #5 0x000000010ab39a98 in JSC::GCThread::gcThreadMain() at /Volumes/Data/webkit/Source/JavaScriptCore/heap/GCThread.cpp:98 #6 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #7 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #8 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #9 0x00007fff82592fc9 in thread_start () Thread 12 JSC Compilation Thread#0 0x00007fff82f60716 in __psynch_cvwait () #1 0x00007fff82590c3b in _pthread_cond_wait at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread_cond.c:516 #2 0x000000010ab2ddeb in JSC::DFG::Worklist::runThread(JSC::DFG::ThreadData*) at /Volumes/Data/webkit/Source/JavaScriptCore/dfg/DFGWorklist.cpp:275 #3 0x000000010adc53df in WTF::wtfThreadEntryPoint(void*) at /Volumes/Data/webkit/Source/WTF/wtf/ThreadingPthreads.cpp:168 #4 0x00007fff8258e899 in _pthread_body at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:629 #5 0x00007fff8258e72a in _pthread_start at /Network/Servers/xbsviews1.sd.apple.com/ifs/Views/Views100/Cab/Projects/libpthread/libpthread-53.1.4/src/pthread.c:654 #6 0x00007fff82592fc9 in thread_start () Thread 13 WebCore: LocalStorageThread 14 WebCore: LocalStorageThread 15
Mark Hahnenberg
Comment 4
2014-04-19 17:29:15 PDT
When running with DRT on command line I get the following: CONSOLE MESSAGE: line 5780: TypeError: undefined is not an object (evaluating 'this.get('newTitle').trim') Seems like this could cause a timeout. I'll investigate more.
Ryosuke Niwa
Comment 5
2014-04-19 17:48:02 PDT
(In reply to
comment #4
)
> When running with DRT on command line I get the following: > > CONSOLE MESSAGE: line 5780: TypeError: undefined is not an object (evaluating 'this.get('newTitle').trim') > > Seems like this could cause a timeout. I'll investigate more.
That indeed appears to be the problem. I can reproduce it on Safari as well. It's erroring out inside an ember.js test. If I keep the inspector's console open, it doesn't hit that error so it ought be some JIT bug.
Mark Hahnenberg
Comment 6
2014-04-19 18:01:38 PDT
(In reply to
comment #5
)
> (In reply to
comment #4
) > > When running with DRT on command line I get the following: > > > > CONSOLE MESSAGE: line 5780: TypeError: undefined is not an object (evaluating 'this.get('newTitle').trim') > > > > Seems like this could cause a timeout. I'll investigate more. > > That indeed appears to be the problem. I can reproduce it on Safari as well. It's erroring out inside an ember.js test. If I keep the inspector's console open, it doesn't hit that error so it ought be some JIT bug.
I can still repro when running with JSC_useJIT=0, so it seems unlikely it's a JIT problem unless it's related to the regular expression JIT (again, very unlikely). Maybe the inspector being open causes enough other random stuff to happen that we avoid hitting this particular bug. I'm going to try running in debug mode to see what happens.
Mark Hahnenberg
Comment 7
2014-04-19 19:44:11 PDT
(In reply to
comment #6
)
> (In reply to
comment #5
) > > (In reply to
comment #4
) > > > When running with DRT on command line I get the following: > > > > > > CONSOLE MESSAGE: line 5780: TypeError: undefined is not an object (evaluating 'this.get('newTitle').trim') > > > > > > Seems like this could cause a timeout. I'll investigate more. > > > > That indeed appears to be the problem. I can reproduce it on Safari as well. It's erroring out inside an ember.js test. If I keep the inspector's console open, it doesn't hit that error so it ought be some JIT bug. > > I can still repro when running with JSC_useJIT=0, so it seems unlikely it's a JIT problem unless it's related to the regular expression JIT (again, very unlikely). Maybe the inspector being open causes enough other random stuff to happen that we avoid hitting this particular bug. > > I'm going to try running in debug mode to see what happens.
Debug build didn't reveal any additional info. I'm going to try adding some logging to Structure transition stuff and see if that tells us anything.
Mark Hahnenberg
Comment 8
2014-04-19 22:29:32 PDT
I can catch the error in a debugger at the time it throws. It seems like the object in question has a Structure that is a descendent of a Structure that was the result of a delete transition. The current Structure and the ancestor Structure have different size property tables. My current theory is that we're somehow copying properties over incorrectly due to the resize of the property table when materializing.
Mark Hahnenberg
Comment 9
2014-04-20 04:36:57 PDT
Ok, well I've been unsuccessful in fixing this so far, so I'm going to recommend that we roll out the bad change so that we don't lose too much coverage on DYEBench.
Mark Hahnenberg
Comment 10
2014-04-20 04:47:31 PDT
(In reply to
comment #9
)
> Ok, well I've been unsuccessful in fixing this so far, so I'm going to recommend that we roll out the bad change so that we don't lose too much coverage on DYEBench.
Rolled out in
http://trac.webkit.org/changeset/167564
.
Ryosuke Niwa
Comment 11
2014-04-21 21:59:10 PDT
No longer seeing the hang.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug