Following the repro steps in comment #0 triggers a failure from DOM Worker, which crashes the tab but does not give a good call stack info because the worker is in WASM. And refreshing the tab causes parent process assertion failure: ``` xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0>::operator()<nsresult>(const nsresult & aRv) Line 1159 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1159) xul.dll!mozilla::dom::fs::data::`anonymous namespace'::SetUsageTrackingImpl<`lambda at C:/Users/sasch/Documents/GitHub/gecko-dev/dom/fs/parent/datamodel/FileSystemDatabaseManagerVersion001.cpp:1152:24' &>(const nsCOMPtr<mozIStorageConnection> & aConnection, const mozilla::dom::fs::FileId & aFileId, bool aTracked, mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0> & aOnMissingFile) Line 277 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:277) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking(const mozilla::dom::fs::FileId & aFileId, bool aTracked) Line 1162 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1162) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::BeginUsageTracking(const mozilla::dom::fs::FileId & aFileId) Line 1065 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1065) xul.dll!mozilla::dom::fs::data::FileSystemDataManager::LockExclusive(const nsTString<char> & aEntryId) Line 418 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDataManager.cpp:418) xul.dll!mozilla::dom::FileSystemAccessHandle::BeginInit() Line 172 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:172) xul.dll!mozilla::dom::FileSystemAccessHandle::Create(RefPtr<mozilla::dom::fs::data::FileSystemDataManager> aDataManager, const nsTString<char> & aEntryId) Line 55 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:55) xul.dll!mozilla::dom::FileSystemManagerParent::RecvGetAccessHandle(mozilla::dom::fs::FileSystemGetAccessHandleRequest && aRequest, std::function<void (mozilla::dom::fs::FileSystemGetAccessHandleResponse &&)> && aResolver) Line 126 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemManagerParent.cpp:126) xul.dll!mozilla::dom::PFileSystemManagerParent::OnMessageReceived(const IPC::Message & msg__) Line 589 (c:\Users\sasch\Documents\GitHub\gecko-dev\obj-dbg\ipc\ipdl\PFileSystemManagerParent.cpp:589) xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) Line 1811 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1811) xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) Line 1739 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1739) xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) Line 1537 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1537) xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() Line 1642 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1642) xul.dll!mozilla::TaskQueue::Runner::Run() Line 264 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\TaskQueue.cpp:264) xul.dll!nsThreadPool::Run() Line 345 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadPool.cpp:345) xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) Line 1194 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThread.cpp:1194) xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) Line 480 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadUtils.cpp:480) xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) Line 300 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessagePump.cpp:300) xul.dll!MessageLoop::RunInternal() Line 370 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:370) xul.dll!MessageLoop::RunHandler() Line 364 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:364) ``` I'll check whether this happens with fresh 116 profile or not. One noticeable thing is that I get a lot of "Exception thrown at 0x0000004BC7ED689D in firefox.exe: 0xC000001D: Illegal Instruction." from wasm, I wonder this is related?
Bug 1847619 Comment 6 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Following the repro steps in comment #0 triggers a failure from DOM Worker, which crashes the tab but does not give a good call stack info because the worker is in WASM. And refreshing the tab causes parent process assertion failure: ``` xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0>::operator()<nsresult>(const nsresult & aRv) Line 1159 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1159) xul.dll!mozilla::dom::fs::data::`anonymous namespace'::SetUsageTrackingImpl<`lambda at C:/Users/sasch/Documents/GitHub/gecko-dev/dom/fs/parent/datamodel/FileSystemDatabaseManagerVersion001.cpp:1152:24' &>(const nsCOMPtr<mozIStorageConnection> & aConnection, const mozilla::dom::fs::FileId & aFileId, bool aTracked, mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0> & aOnMissingFile) Line 277 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:277) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking(const mozilla::dom::fs::FileId & aFileId, bool aTracked) Line 1162 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1162) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::BeginUsageTracking(const mozilla::dom::fs::FileId & aFileId) Line 1065 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1065) xul.dll!mozilla::dom::fs::data::FileSystemDataManager::LockExclusive(const nsTString<char> & aEntryId) Line 418 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDataManager.cpp:418) xul.dll!mozilla::dom::FileSystemAccessHandle::BeginInit() Line 172 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:172) xul.dll!mozilla::dom::FileSystemAccessHandle::Create(RefPtr<mozilla::dom::fs::data::FileSystemDataManager> aDataManager, const nsTString<char> & aEntryId) Line 55 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:55) xul.dll!mozilla::dom::FileSystemManagerParent::RecvGetAccessHandle(mozilla::dom::fs::FileSystemGetAccessHandleRequest && aRequest, std::function<void (mozilla::dom::fs::FileSystemGetAccessHandleResponse &&)> && aResolver) Line 126 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemManagerParent.cpp:126) xul.dll!mozilla::dom::PFileSystemManagerParent::OnMessageReceived(const IPC::Message & msg__) Line 589 (c:\Users\sasch\Documents\GitHub\gecko-dev\obj-dbg\ipc\ipdl\PFileSystemManagerParent.cpp:589) xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) Line 1811 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1811) xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) Line 1739 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1739) xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) Line 1537 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1537) xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() Line 1642 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1642) xul.dll!mozilla::TaskQueue::Runner::Run() Line 264 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\TaskQueue.cpp:264) xul.dll!nsThreadPool::Run() Line 345 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadPool.cpp:345) xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) Line 1194 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThread.cpp:1194) xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) Line 480 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadUtils.cpp:480) xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) Line 300 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessagePump.cpp:300) xul.dll!MessageLoop::RunInternal() Line 370 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:370) xul.dll!MessageLoop::RunHandler() Line 364 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:364) ``` I'll check whether this happens with fresh 116 profile or not. (Edit: it does not) One noticeable thing is that I get a lot of "Exception thrown at 0x0000004BC7ED689D in firefox.exe: 0xC000001D: Illegal Instruction." from wasm, I wonder this is related?
Following the repro steps in comment #0 triggers a failure from DOM Worker, which crashes the tab but does not give a good call stack info because the worker is in WASM. And refreshing the tab causes parent process assertion failure: ``` xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0>::operator()<nsresult>(const nsresult & aRv) Line 1159 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1159) xul.dll!mozilla::dom::fs::data::`anonymous namespace'::SetUsageTrackingImpl<`lambda at C:/Users/sasch/Documents/GitHub/gecko-dev/dom/fs/parent/datamodel/FileSystemDatabaseManagerVersion001.cpp:1152:24' &>(const nsCOMPtr<mozIStorageConnection> & aConnection, const mozilla::dom::fs::FileId & aFileId, bool aTracked, mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0> & aOnMissingFile) Line 277 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:277) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking(const mozilla::dom::fs::FileId & aFileId, bool aTracked) Line 1162 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1162) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::BeginUsageTracking(const mozilla::dom::fs::FileId & aFileId) Line 1065 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1065) xul.dll!mozilla::dom::fs::data::FileSystemDataManager::LockExclusive(const nsTString<char> & aEntryId) Line 418 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDataManager.cpp:418) xul.dll!mozilla::dom::FileSystemAccessHandle::BeginInit() Line 172 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:172) xul.dll!mozilla::dom::FileSystemAccessHandle::Create(RefPtr<mozilla::dom::fs::data::FileSystemDataManager> aDataManager, const nsTString<char> & aEntryId) Line 55 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:55) xul.dll!mozilla::dom::FileSystemManagerParent::RecvGetAccessHandle(mozilla::dom::fs::FileSystemGetAccessHandleRequest && aRequest, std::function<void (mozilla::dom::fs::FileSystemGetAccessHandleResponse &&)> && aResolver) Line 126 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemManagerParent.cpp:126) xul.dll!mozilla::dom::PFileSystemManagerParent::OnMessageReceived(const IPC::Message & msg__) Line 589 (c:\Users\sasch\Documents\GitHub\gecko-dev\obj-dbg\ipc\ipdl\PFileSystemManagerParent.cpp:589) xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) Line 1811 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1811) xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) Line 1739 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1739) xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) Line 1537 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1537) xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() Line 1642 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1642) xul.dll!mozilla::TaskQueue::Runner::Run() Line 264 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\TaskQueue.cpp:264) xul.dll!nsThreadPool::Run() Line 345 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadPool.cpp:345) xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) Line 1194 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThread.cpp:1194) xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) Line 480 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadUtils.cpp:480) xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) Line 300 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessagePump.cpp:300) xul.dll!MessageLoop::RunInternal() Line 370 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:370) xul.dll!MessageLoop::RunHandler() Line 364 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:364) ``` I'll check whether this happens with fresh 116 profile or not. (Edit: it does not) One noticeable thing is that I get a lot of "Exception thrown at 0x0000004BC7ED689D in firefox.exe: 0xC000001D: Illegal Instruction." from wasm, I wonder this is related?
Following the repro steps in comment #0 triggers a failure from DOM Worker, which crashes the tab but does not give a good call stack info because the worker is in WASM. And refreshing the tab causes parent process assertion failure: ``` xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0>::operator()<nsresult>(const nsresult & aRv) Line 1159 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1159) xul.dll!mozilla::dom::fs::data::`anonymous namespace'::SetUsageTrackingImpl<`lambda at C:/Users/sasch/Documents/GitHub/gecko-dev/dom/fs/parent/datamodel/FileSystemDatabaseManagerVersion001.cpp:1152:24' &>(const nsCOMPtr<mozIStorageConnection> & aConnection, const mozilla::dom::fs::FileId & aFileId, bool aTracked, mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0> & aOnMissingFile) Line 277 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:277) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking(const mozilla::dom::fs::FileId & aFileId, bool aTracked) Line 1162 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1162) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::BeginUsageTracking(const mozilla::dom::fs::FileId & aFileId) Line 1065 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1065) xul.dll!mozilla::dom::fs::data::FileSystemDataManager::LockExclusive(const nsTString<char> & aEntryId) Line 418 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDataManager.cpp:418) xul.dll!mozilla::dom::FileSystemAccessHandle::BeginInit() Line 172 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:172) xul.dll!mozilla::dom::FileSystemAccessHandle::Create(RefPtr<mozilla::dom::fs::data::FileSystemDataManager> aDataManager, const nsTString<char> & aEntryId) Line 55 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:55) xul.dll!mozilla::dom::FileSystemManagerParent::RecvGetAccessHandle(mozilla::dom::fs::FileSystemGetAccessHandleRequest && aRequest, std::function<void (mozilla::dom::fs::FileSystemGetAccessHandleResponse &&)> && aResolver) Line 126 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemManagerParent.cpp:126) xul.dll!mozilla::dom::PFileSystemManagerParent::OnMessageReceived(const IPC::Message & msg__) Line 589 (c:\Users\sasch\Documents\GitHub\gecko-dev\obj-dbg\ipc\ipdl\PFileSystemManagerParent.cpp:589) xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) Line 1811 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1811) xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) Line 1739 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1739) xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) Line 1537 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1537) xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() Line 1642 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1642) xul.dll!mozilla::TaskQueue::Runner::Run() Line 264 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\TaskQueue.cpp:264) xul.dll!nsThreadPool::Run() Line 345 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadPool.cpp:345) xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) Line 1194 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThread.cpp:1194) xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) Line 480 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadUtils.cpp:480) xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) Line 300 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessagePump.cpp:300) xul.dll!MessageLoop::RunInternal() Line 370 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:370) xul.dll!MessageLoop::RunHandler() Line 364 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:364) ``` I'll check whether this happens with fresh 116 profile or not. (Edit: it does not) One noticeable thing is that I get a lot of "Exception thrown at 0x0000004BC7ED689D in firefox.exe: 0xC000001D: Illegal Instruction." from wasm, I wonder this is related? (Edit: It happens on a fresh profile, so probably not)
Following the repro steps in comment #0 on debug build triggers a failure from DOM Worker, which crashes the tab but does not give a good call stack info because the worker is in WASM. And refreshing the tab causes parent process assertion failure: ``` xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0>::operator()<nsresult>(const nsresult & aRv) Line 1159 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1159) xul.dll!mozilla::dom::fs::data::`anonymous namespace'::SetUsageTrackingImpl<`lambda at C:/Users/sasch/Documents/GitHub/gecko-dev/dom/fs/parent/datamodel/FileSystemDatabaseManagerVersion001.cpp:1152:24' &>(const nsCOMPtr<mozIStorageConnection> & aConnection, const mozilla::dom::fs::FileId & aFileId, bool aTracked, mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking::<lambda_0> & aOnMissingFile) Line 277 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:277) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::SetUsageTracking(const mozilla::dom::fs::FileId & aFileId, bool aTracked) Line 1162 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1162) xul.dll!mozilla::dom::fs::data::FileSystemDatabaseManagerVersion001::BeginUsageTracking(const mozilla::dom::fs::FileId & aFileId) Line 1065 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDatabaseManagerVersion001.cpp:1065) xul.dll!mozilla::dom::fs::data::FileSystemDataManager::LockExclusive(const nsTString<char> & aEntryId) Line 418 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\datamodel\FileSystemDataManager.cpp:418) xul.dll!mozilla::dom::FileSystemAccessHandle::BeginInit() Line 172 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:172) xul.dll!mozilla::dom::FileSystemAccessHandle::Create(RefPtr<mozilla::dom::fs::data::FileSystemDataManager> aDataManager, const nsTString<char> & aEntryId) Line 55 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemAccessHandle.cpp:55) xul.dll!mozilla::dom::FileSystemManagerParent::RecvGetAccessHandle(mozilla::dom::fs::FileSystemGetAccessHandleRequest && aRequest, std::function<void (mozilla::dom::fs::FileSystemGetAccessHandleResponse &&)> && aResolver) Line 126 (c:\Users\sasch\Documents\GitHub\gecko-dev\dom\fs\parent\FileSystemManagerParent.cpp:126) xul.dll!mozilla::dom::PFileSystemManagerParent::OnMessageReceived(const IPC::Message & msg__) Line 589 (c:\Users\sasch\Documents\GitHub\gecko-dev\obj-dbg\ipc\ipdl\PFileSystemManagerParent.cpp:589) xul.dll!mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, const IPC::Message & aMsg) Line 1811 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1811) xul.dll!mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message>> aMsg) Line 1739 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1739) xul.dll!mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy * aProxy, mozilla::ipc::MessageChannel::MessageTask & aTask) Line 1537 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1537) xul.dll!mozilla::ipc::MessageChannel::MessageTask::Run() Line 1642 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessageChannel.cpp:1642) xul.dll!mozilla::TaskQueue::Runner::Run() Line 264 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\TaskQueue.cpp:264) xul.dll!nsThreadPool::Run() Line 345 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadPool.cpp:345) xul.dll!nsThread::ProcessNextEvent(bool aMayWait, bool * aResult) Line 1194 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThread.cpp:1194) xul.dll!NS_ProcessNextEvent(nsIThread * aThread, bool aMayWait) Line 480 (c:\Users\sasch\Documents\GitHub\gecko-dev\xpcom\threads\nsThreadUtils.cpp:480) xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate * aDelegate) Line 300 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\glue\MessagePump.cpp:300) xul.dll!MessageLoop::RunInternal() Line 370 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:370) xul.dll!MessageLoop::RunHandler() Line 364 (c:\Users\sasch\Documents\GitHub\gecko-dev\ipc\chromium\src\base\message_loop.cc:364) ``` I'll check whether this happens with fresh 116 profile or not. (Edit: it does not) One noticeable thing is that I get a lot of "Exception thrown at 0x0000004BC7ED689D in firefox.exe: 0xC000001D: Illegal Instruction." from wasm, I wonder this is related? (Edit: It happens on a fresh profile, so probably not)