Bug 157781 - ARMV7K: Crash at JavaScriptCore: WTF::ScopedLambdaFunctor<bool
Summary: ARMV7K: Crash at JavaScriptCore: WTF::ScopedLambdaFunctor<bool
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Template Framework (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Michael Saboff
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2016-05-16 19:56 PDT by Michael Saboff
Modified: 2016-05-16 21:01 PDT (History)
5 users (show)

See Also:


Attachments
Patch (5.38 KB, patch)
2016-05-16 20:05 PDT, Michael Saboff
fpizlo: review+
commit-queue: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Saboff 2016-05-16 19:56:47 PDT
An internal scripting tool, scripter, when compiled for ARMv7K crashes in locking code.

Crash trace:

scripter crash
JavaScriptCore:  WTF::ScopedLambdaFunctor<bool
Thread 6 Crashed:
0   JavaScriptCore                0x1e33590a WTF::ScopedLambdaFunctor<bool (), bool WTF::ConditionBase::waitUntil<std::__1::unique_lock<WTF::Lock> >(std::__1::unique_lock<WTF::Lock>&, std::__1::chrono::time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1ll, 1000000000ll> > >)::'lambda'()>::implFunction(void*) + 8 (atomic:842)
1   JavaScriptCore                0x1e3721bc WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, std::__1::chrono::time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1ll, 1000000000ll> > >) + 1532 (ScopedLambda.h:56)
2   JavaScriptCore                0x1e335898 bool WTF::ConditionBase::waitUntil<std::__1::unique_lock<WTF::Lock> >(std::__1::unique_lock<WTF::Lock>&, std::__1::chrono::time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1ll, 1000000000ll> > >) + 142 (ParkingLot.h:62)
3   JavaScriptCore                0x1e073d54 JSC::SlotVisitor::drainFromShared(JSC::SlotVisitor::SharedDrainMode) + 276 (Condition.h:113)
4   JavaScriptCore                0x1e176582 WTF::SharedTaskFunctor<void (), JSC::Heap::markRoots(double, void*, void*, int (&) [48])::$_0>::run() + 238 (Heap.cpp:584)
5   JavaScriptCore                0x1e371022 WTF::ParallelHelperClient::runTask(WTF::RefPtr<WTF::SharedTask<void ()> >) + 32 (ParallelHelperPool.cpp:111)
6   JavaScriptCore                0x1e3717d4 WTF::ParallelHelperPool::helperThreadBody() + 226 (ParallelHelperPool.cpp:198)
7   JavaScriptCore                0x1e06c7e0 WTF::threadEntryPoint(void*) + 138 (functional:1817)
8   JavaScriptCore                0x1e06c748 WTF::wtfThreadEntryPoint(void*) + 12 (ThreadingPthreads.cpp:164)
9   libsystem_pthread.dylib       0x1a8878a0 _pthread_body + 222 (pthread.c:695)
10  libsystem_pthread.dylib       0x1a8877c2 _pthread_start + 232 (pthread.c:738)
11  libsystem_pthread.dylib       0x1a885538 thread_start

Since this only happens on this one platform, there is suspicion that this is a clang bug.
Comment 1 Michael Saboff 2016-05-16 19:57:15 PDT
<rdar://problem/26076062>
Comment 2 Michael Saboff 2016-05-16 20:05:36 PDT
Created attachment 279086 [details]
Patch
Comment 3 WebKit Commit Bot 2016-05-16 20:46:37 PDT
Comment on attachment 279086 [details]
Patch

Rejecting attachment 279086 [details] from commit-queue.

Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.webkit.org', '--bot-id=webkit-cq-02', 'validate-changelog', '--check-oops', '--non-interactive', 279086, '--port=mac']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in Source/WTF/ChangeLog contains OOPS!.

Full output: http://webkit-queues.webkit.org/results/1334344
Comment 4 Michael Saboff 2016-05-16 21:01:43 PDT
Committed r200993: <http://trac.webkit.org/changeset/200993>