Bug 225315 - [ macOS/iOS Debug ] http/wpt/crypto/unwrap-rsa-key-crash.any.html (layout-test) is a flaky crash
Summary: [ macOS/iOS Debug ] http/wpt/crypto/unwrap-rsa-key-crash.any.html (layout-tes...
Status: RESOLVED DUPLICATE of bug 224845
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-05-03 10:28 PDT by Robert Jenner
Modified: 2021-05-05 12:50 PDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Jenner 2021-05-03 10:28:33 PDT
http/wpt/crypto/unwrap-rsa-key-crash.any.html

is a flaky crash on debug for iOS14 and Catalina+.

HISOTRY:
https://results.webkit.org/?suite=layout-tests&test=http%2Fwpt%2Fcrypto%2Funwrap-rsa-key-crash.any.html

CRASH TEXT:
Thread 31 Crashed:: WebCore: Worker
0   com.apple.JavaScriptCore      	0x0000000105e9e2fe WTFCrash + 14 (Assertions.cpp:305)
1   com.apple.WebCore             	0x0000000128c1afeb WTFCrashWithInfo(int, char const*, char const*, int) + 27
2   com.apple.WebCore             	0x000000012b947a6b WebCore::SubtleCrypto::unwrapKey(JSC::JSGlobalObject&, WebCore::CryptoKeyFormat, WebCore::BufferSource&&, WebCore::CryptoKey&, WTF::Variant<JSC::Strong<JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0>, WTF::String>&&, WTF::Variant<JSC::Strong<JSC::JSObject, (JSC::ShouldStrongDestructorGrabLock)0>, WTF::String>&&, bool, WTF::Vector<WebCore::CryptoKeyUsage, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&&, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&) + 331
3   com.apple.WebCore             	0x000000012a388589 WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)::'lambda'()::operator()() const + 281
4   com.apple.WebCore             	0x000000012a388041 JSC::JSValue WebCore::toJS<WebCore::IDLPromise<WebCore::IDLInterface<WebCore::CryptoKey> >, WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)::'lambda'()>(JSC::JSGlobalObject&, WebCore::JSDOMGlobalObject&, JSC::ThrowScope&, WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)::'lambda'()&&) + 33
5   com.apple.WebCore             	0x000000012a387b8c WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&) + 3228
6   com.apple.WebCore             	0x000000012a388803 long long WebCore::IDLOperationReturningPromise<WebCore::JSSubtleCrypto>::call<&(WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)), (WebCore::CastedThisErrorBehavior)2>(JSC::JSGlobalObject&, JSC::CallFrame&, char const*)::'lambda'(JSC::JSGlobalObject&, JSC::CallFrame&, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)::operator()(JSC::JSGlobalObject&, JSC::CallFrame&, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&) const + 579
7   com.apple.WebCore             	0x000000012a387dff JSC::JSValue WebCore::callPromiseFunction<long long WebCore::IDLOperationReturningPromise<WebCore::JSSubtleCrypto>::call<&(WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)), (WebCore::CastedThisErrorBehavior)2>(JSC::JSGlobalObject&, JSC::CallFrame&, char const*)::'lambda'(JSC::JSGlobalObject&, JSC::CallFrame&, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)>(JSC::JSGlobalObject&, JSC::CallFrame&, &(WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&))) + 399
8   com.apple.WebCore             	0x000000012a386edd long long WebCore::IDLOperationReturningPromise<WebCore::JSSubtleCrypto>::call<&(WebCore::jsSubtleCryptoPrototypeFunction_unwrapKeyBody(JSC::JSGlobalObject*, JSC::CallFrame*, WebCore::JSSubtleCrypto*, WTF::Ref<WebCore::DeferredPromise, WTF::RawPtrTraits<WebCore::DeferredPromise> >&&)), (WebCore::CastedThisErrorBehavior)2>(JSC::JSGlobalObject&, JSC::CallFrame&, char const*) + 45
9   com.apple.WebCore             	0x000000012a379dd4 WebCore::jsSubtleCryptoPrototypeFunction_unwrapKey(JSC::JSGlobalObject*, JSC::CallFrame*) + 36
10  ???                           	0x000035f26f1a8018 0 + 59315362365464
11  com.apple.JavaScriptCore      	0x00000001064b5510 llint_entry + 138518
12  com.apple.JavaScriptCore      	0x00000001064b55b8 llint_entry + 138686
13  com.apple.JavaScriptCore      	0x0000000106493500 vmEntryToJavaScript + 289
14  com.apple.JavaScriptCore      	0x00000001073fa0fb JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 235
15  com.apple.JavaScriptCore      	0x00000001073fa85c JSC::Interpreter::executeCall(JSC::JSGlobalObject*, JSC::JSObject*, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 1724
16  com.apple.JavaScriptCore      	0x0000000107797abd JSC::call(JSC::JSGlobalObject*, JSC::JSValue, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 221
17  com.apple.JavaScriptCore      	0x0000000107797d93 JSC::profiledCall(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::JSValue, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 115
18  com.apple.JavaScriptCore      	0x0000000107a11bf1 JSC::JSMicrotask::run(JSC::JSGlobalObject*) + 657
19  com.apple.WebCore             	0x000000012b76332e WebCore::JSExecState::runTask(JSC::JSGlobalObject*, JSC::Microtask&) + 46
20  com.apple.WebCore             	0x000000012b76a09b WebCore::JSMicrotaskCallback::call() + 235
21  com.apple.WebCore             	0x000000012b85579d WebCore::JSWorkerGlobalScopeBase::queueMicrotaskToEventLoop(JSC::JSGlobalObject&, WTF::Ref<JSC::Microtask, WTF::RawPtrTraits<JSC::Microtask> >&&)::$_0::operator()() + 29
22  com.apple.WebCore             	0x000000012b8556ce WTF::Detail::CallableWrapper<WebCore::JSWorkerGlobalScopeBase::queueMicrotaskToEventLoop(JSC::JSGlobalObject&, WTF::Ref<JSC::Microtask, WTF::RawPtrTraits<JSC::Microtask> >&&)::$_0, void>::call() + 30
23  com.apple.WebCore             	0x0000000128c2fb02 WTF::Function<void ()>::operator()() const + 130 (Function.h:83)
24  com.apple.WebCore             	0x000000012bed347e WebCore::EventLoopFunctionDispatchTask::execute() + 30
25  com.apple.WebCore             	0x000000012bf1d24b WebCore::MicrotaskQueue::performMicrotaskCheckpoint() + 347
26  com.apple.WebCore             	0x000000012bec8151 WebCore::EventLoop::performMicrotaskCheckpoint() + 33
27  com.apple.WebCore             	0x000000012bec96ad WebCore::EventLoopTaskGroup::performMicrotaskCheckpoint() + 77
28  com.apple.WebCore             	0x000000012b71535e WebCore::JSExecState::didLeaveScriptContext(JSC::JSGlobalObject*) + 62
29  com.apple.WebCore             	0x000000012b71ffa2 WebCore::JSExecState::~JSExecState() + 242
30  com.apple.WebCore             	0x000000012b71fdc5 WebCore::JSExecState::~JSExecState() + 21
31  com.apple.WebCore             	0x000000012b7b2019 WebCore::JSExecState::profiledEvaluate(JSC::JSGlobalObject*, JSC::ProfilingReason, JSC::SourceCode const&, JSC::JSValue, WTF::NakedPtr<JSC::Exception>&) + 89
32  com.apple.WebCore             	0x000000012dfdc0db WebCore::WorkerOrWorkletScriptController::evaluate(WebCore::ScriptSourceCode const&, WTF::NakedPtr<JSC::Exception>&, WTF::String*) + 219
33  com.apple.WebCore             	0x000000012dfe4441 WebCore::WorkerOrWorkletScriptController::evaluate(WebCore::ScriptSourceCode const&, WTF::String*) + 97
34  com.apple.WebCore             	0x000000012e0221cb WebCore::WorkerThread::evaluateScriptIfNecessary(WTF::String&) + 283
35  com.apple.WebCore             	0x000000012dfe7f53 WebCore::WorkerOrWorkletThread::workerOrWorkletThread() + 419
36  com.apple.WebCore             	0x000000012e0350bb WebCore::WorkerThread::createThread()::$_1::operator()() const + 27
37  com.apple.WebCore             	0x000000012e03504e WTF::Detail::CallableWrapper<WebCore::WorkerThread::createThread()::$_1, void>::call() + 30
38  com.apple.JavaScriptCore      	0x0000000105eca052 WTF::Function<void ()>::operator()() const + 130 (Function.h:83)
39  com.apple.JavaScriptCore      	0x0000000105f927a8 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 424 (Threading.cpp:186)
40  com.apple.JavaScriptCore      	0x0000000105fa0668 WTF::wtfThreadEntryPoint(void*) + 24 (ThreadingPOSIX.cpp:241)
41  libsystem_pthread.dylib       	0x00007fff6cc22109 _pthread_start + 148
42  libsystem_pthread.dylib       	0x00007fff6cc1db8b thread_start + 15
Comment 1 Robert Jenner 2021-05-03 11:02:48 PDT
Updated test expectations to Pass Crash here:

https://trac.webkit.org/changeset/276909/webkit
Comment 2 Robert Jenner 2021-05-03 11:52:32 PDT
This test was also flaky failing on EWS, and was causing a slow down, seen here:
https://ews-build.webkit.org/#/builders/56/builds/6934
Comment 3 Radar WebKit Bug Importer 2021-05-03 11:52:48 PDT
<rdar://problem/77465604>
Comment 4 Alexey Proskuryakov 2021-05-05 12:50:08 PDT

*** This bug has been marked as a duplicate of bug 224845 ***