Bug 223500 - [WinCairo] ASSERTION FAILED: isMainThread() in GPU process for some canvas/philip/tests tests
Summary: [WinCairo] ASSERTION FAILED: isMainThread() in GPU process for some canvas/ph...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Fujii Hironori
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-03-18 22:51 PDT by Fujii Hironori
Modified: 2021-03-22 17:48 PDT (History)
8 users (show)

See Also:


Attachments
2d.text.draw.align.end.ltr-crash-log.txt (61.93 KB, text/plain)
2021-03-18 22:51 PDT, Fujii Hironori
no flags Details
Patch (14.22 KB, patch)
2021-03-21 19:17 PDT, Fujii Hironori
ews-feeder: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2021-03-18 22:51:17 PDT
[WinCairo] ASSERTION FAILED: isMainThread() in GPU process for some canvas/philip/tests tests

WinCairo WebKit2 Debug build
Since r274327

  canvas/philip/tests/2d.text.draw.align.end.ltr.html [ Crash ]
  canvas/philip/tests/2d.text.draw.align.end.rtl.html [ Crash ]
  canvas/philip/tests/2d.text.draw.align.left.html [ Crash ]
  canvas/philip/tests/2d.text.draw.align.right.html [ Crash ]
  canvas/philip/tests/2d.text.draw.align.start.ltr.html [ Crash ]
  canvas/philip/tests/2d.text.draw.align.start.rtl.html [ Crash ]
  canvas/philip/tests/2d.text.draw.baseline.alphabetic.html [ Crash ]
  canvas/philip/tests/2d.text.draw.baseline.bottom.html [ Crash ]
  canvas/philip/tests/2d.text.draw.baseline.hanging.html [ Crash ]
  canvas/philip/tests/2d.text.draw.baseline.ideographic.html [ Crash ]
  canvas/philip/tests/2d.text.draw.baseline.middle.html [ Crash ]
  canvas/philip/tests/2d.text.draw.baseline.top.html [ Crash ]
  canvas/philip/tests/2d.text.draw.fill.maxWidth.bound.html [ Crash ]
  canvas/philip/tests/2d.text.draw.fill.maxWidth.fontface.html [ Crash ]
  canvas/philip/tests/2d.text.draw.fontface.html [ Crash ]
  canvas/philip/tests/2d.text.draw.fontface.notinpage.html [ Crash ]
  canvas/philip/tests/2d.text.draw.fontface.repeat.html [ Crash ]
  canvas/philip/tests/2d.text.draw.space.collapse.end.html [ Crash ]
  canvas/philip/tests/2d.text.draw.space.collapse.other.html [ Crash ]
  canvas/philip/tests/2d.text.draw.stroke.basic.html [ Crash ]

Callstack:

> WTF!WTFCrash(void)+0x1f [C:\home\webkit\gc\Source\WTF\wtf\Assertions.cpp @ 295]
> WebKit2!WTFCrashWithInfo(int __formal = 0n55, char * __formal = 0x00007ffb`0f4d72f0 "C:\home\webkit\gc\WebKitBuild\Debug\WTF\Headers\wtf/NeverDestroyed.h", char * __formal = 0x00007ffb`149bafb0 "WTF::MainThreadAccessTraits::assertAccess", int __formal = 0n106)+0x31 [C:\home\webkit\gc\WebKitBuild\Debug\WTF\Headers\wtf\Assertions.h @ 672]
> WebKit2!WTF::MainThreadAccessTraits::assertAccess(void)+0x6a [C:\home\webkit\gc\WebKitBuild\Debug\WTF\Headers\wtf\NeverDestroyed.h @ 55]
> WebKit2!WTF::NeverDestroyed<WTF::AtomString const ,WTF::MainThreadAccessTraits>::NeverDestroyed<WTF::AtomString const ,WTF::MainThreadAccessTraits><char const (char (*)[6] <args_0> = 0x00007ffb`20e00b44, WTF::AtomString::ConstructFromLiteralTag * <args_1> = 0x000000ec`bf3fe7e8)+0x2d [C:\home\webkit\gc\WebKitBuild\Debug\WTF\Headers\wtf\NeverDestroyed.h @ 67]
> WebKit2!WebCore::FontCache::alternateFamilyName(class WTF::AtomString * familyName = 0x000000ec`bf3fedc8)+0x78 [C:\home\webkit\gc\Source\WebCore\platform\graphics\FontCache.cpp @ 152]
> WebKit2!WebCore::FontCache::getCachedFontPlatformData(class WebCore::FontDescription * fontDescription = 0x000000ec`bf3fec70, class WTF::AtomString * passedFamilyName = 0x000000ec`bf3fedc8, class WebCore::FontTaggedSettings<int> * fontFaceFeatures = 0x00000000`00000000, struct WebCore::FontSelectionSpecifiedCapabilities * fontFaceCapabilities = 0x000000ec`bf3feaf0, bool checkingAlternateName = false)+0x1e7 [C:\home\webkit\gc\Source\WebCore\platform\graphics\FontCache.cpp @ 231]
> WebKit2!WebCore::FontCache::fontForFamily(class WebCore::FontDescription * fontDescription = 0x000000ec`bf3fec70, class WTF::AtomString * family = 0x000000ec`bf3fedc8, class WebCore::FontTaggedSettings<int> * fontFaceFeatures = 0x00000000`00000000, struct WebCore::FontSelectionSpecifiedCapabilities * fontFaceCapabilities = 0x000000ec`bf3fed90, bool checkingAlternateName = false)+0xbf [C:\home\webkit\gc\Source\WebCore\platform\graphics\FontCache.cpp @ 320]
> WebKit2!IPC::ArgumentCoder<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> >,void>::decodePlatformData(class IPC::Decoder * decoder = 0x0000024d`da2ee7b0)+0x3d1 [C:\home\webkit\gc\Source\WebKit\Shared\win\WebCoreArgumentCodersWin.cpp @ 104]
> WebKit2!IPC::ArgumentCoder<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> >,void>::decode(class IPC::Decoder * decoder = 0x0000024d`da2ee7b0)+0x1f1 [C:\home\webkit\gc\Source\WebKit\Shared\WebCoreArgumentCoders.cpp @ 1125]
> WebKit2!IPC::Decoder::operator>><WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > >(class WTF::Optional<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > > * t = 0x000000ec`bf3ff058)+0x32 [C:\home\webkit\gc\Source\WebKit\Platform\IPC\Decoder.h @ 109]
> WebKit2!IPC::TupleDecoderImpl<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > >::decode(class IPC::Decoder * decoder = 0x0000024d`da2ee7b0)+0x4b [C:\home\webkit\gc\Source\WebKit\Platform\IPC\ArgumentCoders.h @ 323]
> WebKit2!IPC::TupleDecoder<1,WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > >::decode(class IPC::Decoder * decoder = 0x0000024d`da2ee7b0)+0x32 [C:\home\webkit\gc\Source\WebKit\Platform\IPC\ArgumentCoders.h @ 333]
> WebKit2!IPC::ArgumentCoder<std::tuple<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > >,void>::decode(class IPC::Decoder * decoder = 0x0000024d`da2ee7b0)+0x32 [C:\home\webkit\gc\Source\WebKit\Platform\IPC\ArgumentCoders.h @ 354]
> WebKit2!IPC::Decoder::operator>><std::tuple<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > > >(class WTF::Optional<std::tuple<WTF::Ref<WebCore::Font,WTF::RawPtrTraits<WebCore::Font> > > > * t = 0x000000ec`bf3ff168)+0x32 [C:\home\webkit\gc\Source\WebKit\Platform\IPC\Decoder.h @ 109]
> WebKit2!IPC::handleMessage<Messages::RemoteRenderingBackend::CacheFont,WebKit::RemoteRenderingBackend,void (class IPC::Decoder * decoder = 0x0000024d`da2ee7b0, class WebKit::RemoteRenderingBackend * object = 0x0000024d`da2bf9d0, <function> * function = 0x000000ec`bf3ff2c0)+0x5a [C:\home\webkit\gc\Source\WebKit\Platform\IPC\HandleMessage.h @ 116]
> WebKit2!WebKit::RemoteRenderingBackend::didReceiveMessage(class IPC::Connection * connection = 0x0000024d`da2a7080, class IPC::Decoder * decoder = 0x0000024d`da2ee7b0)+0x26b [C:\home\webkit\gc\WebKitBuild\Debug\WebKit\DerivedSources\RemoteRenderingBackendMessageReceiver.cpp @ 102]
> WebKit2!IPC::Connection::dispatchMessageReceiverMessage(class IPC::MessageReceiver * messageReceiver = 0x0000024d`da2bf9d8, class std::unique_ptr<IPC::Decoder,std::default_delete<IPC::Decoder> > * decoder = 0x0000024d`da2e8be0 unique_ptr {...})+0x9b [C:\home\webkit\gc\Source\WebKit\Platform\IPC\Connection.cpp @ 370]
> WebKit2!<lambda_fa242d30b5120ee82c5fbfe9b086e112>::operator()(void)+0x70 [C:\home\webkit\gc\Source\WebKit\Platform\IPC\MessageReceiveQueues.h @ 87]
> WebKit2!WTF::Detail::CallableWrapper<<lambda_fa242d30b5120ee82c5fbfe9b086e112>,void>::call(void)+0x2f [C:\home\webkit\gc\WebKitBuild\Debug\WTF\Headers\wtf\Function.h @ 52]
> WTF!WTF::Function<void __cdecl(void)+0xa7 [C:\home\webkit\gc\Source\WTF\wtf\Function.h @ 84]
> WTF!<lambda_165284f13689ecf61d54841e180dffca>::operator()(void)+0x2f [C:\home\webkit\gc\Source\WTF\wtf\generic\WorkQueueGeneric.cpp @ 72]
> WTF!WTF::Detail::CallableWrapper<<lambda_165284f13689ecf61d54841e180dffca>,void>::call(void)+0x2f [C:\home\webkit\gc\Source\WTF\wtf\Function.h @ 52]
> WTF!WTF::Function<void __cdecl(void)+0xa7 [C:\home\webkit\gc\Source\WTF\wtf\Function.h @ 84]
> WTF!WTF::RunLoop::performWork(void)+0x187 [C:\home\webkit\gc\Source\WTF\wtf\RunLoop.cpp @ 134]
> WTF!WTF::RunLoop::wndProc(struct HWND__ * hWnd = 0x00000000`00910640, unsigned int message = 0x401, unsigned int64 wParam = 0x0000024d`da2cff20, int64 lParam = 0n0)+0x55 [C:\home\webkit\gc\Source\WTF\wtf\win\RunLoopWin.cpp @ 57]
> WTF!WTF::RunLoop::RunLoopWndProc(struct HWND__ * hWnd = 0x00000000`00910640, unsigned int message = 0x401, unsigned int64 wParam = 0x0000024d`da2cff20, int64 lParam = 0n0)+0x68 [C:\home\webkit\gc\Source\WTF\wtf\win\RunLoopWin.cpp @ 39]
> USER32!UserCallWinProcCheckWow+0x2bd
> USER32!DispatchMessageWorker+0x1e2
> WTF!WTF::RunLoop::run(void)+0x64 [C:\home\webkit\gc\Source\WTF\wtf\win\RunLoopWin.cpp @ 74]
> WTF!<lambda_af185931be5172a935ce03ebf3f56707>::operator()(void)+0x4c [C:\home\webkit\gc\Source\WTF\wtf\generic\WorkQueueGeneric.cpp @ 52]
> WTF!WTF::Detail::CallableWrapper<<lambda_af185931be5172a935ce03ebf3f56707>,void>::call(void)+0x2f [C:\home\webkit\gc\Source\WTF\wtf\Function.h @ 52]
> WTF!WTF::Function<void __cdecl(void)+0xa7 [C:\home\webkit\gc\Source\WTF\wtf\Function.h @ 84]
> WTF!WTF::Thread::entryPoint(struct WTF::Thread::NewThreadContext * newThreadContext = 0x0000024d`da2e5ae0)+0x1f6 [C:\home\webkit\gc\Source\WTF\wtf\Threading.cpp @ 182]
> WTF!WTF::wtfThreadEntryPoint(void * data = 0x0000024d`da2e5ae0)+0x28 [C:\home\webkit\gc\Source\WTF\wtf\win\ThreadingWin.cpp @ 153]
> ucrtbase!thread_start<unsigned int +0x42
> KERNEL32!BaseThreadInitThunk+0x14
> ntdll!RtlUserThreadStart+0x21
Comment 1 Fujii Hironori 2021-03-18 22:51:34 PDT
Created attachment 423694 [details]
2d.text.draw.align.end.ltr-crash-log.txt
Comment 2 Fujii Hironori 2021-03-21 19:17:11 PDT
Created attachment 423844 [details]
Patch
Comment 3 Fujii Hironori 2021-03-22 13:38:41 PDT
Comment on attachment 423844 [details]
Patch

Clearing flags on attachment: 423844

Committed r274791 (235595@main): <https://commits.webkit.org/235595@main>
Comment 4 Fujii Hironori 2021-03-22 13:38:45 PDT
All reviewed patches have been landed.  Closing bug.
Comment 5 Radar WebKit Bug Importer 2021-03-22 13:39:12 PDT
<rdar://problem/75706741>
Comment 6 Fujii Hironori 2021-03-22 17:32:27 PDT
Committed r274827 (235623@main): <https://commits.webkit.org/235623@main>
Comment 7 Fujii Hironori 2021-03-22 17:48:38 PDT
Committed r274831 (235626@main): <https://commits.webkit.org/235626@main>