Crash in [@ profiler_register_thread] - MOZ_RELEASE_ASSERT(CorePS::Exists())
Categories
(Core :: Gecko Profiler, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox93 | --- | fixed |
People
(Reporter: mozbugz, Assigned: mozbugz)
References
Details
Crash Data
Attachments
(1 file)
Thanks to bug 1722261, I believe a lot of the crashes in profiler_register_thread
should not happen anymore.
Looking at the crash reports since it landed, I see only two reports, with the same crash location in profiler_register_thread
:
MOZ_RELEASE_ASSERT(CorePS::Exists());
This happens in the "COM MTA" thread, and the main thread seems to be handling an exception and/or exiting.
I think the main thread hasn't reached the profiling initialization, or has already shut down, which would explain this assertion.
Since bug 1722261, thread registrations are not tied to CorePS
anymore, they're stored in a static list in ThreadRegistry
.
Also, profiler_register_thread
immediately calls ThreadRegistration::RegisterThread
-> ThreadRegistration
constructor -> ThreadRegistry::Register
, which checks if there is a CorePS
before working with it.
So I believe this assertion can safely be removed now.
Assignee | ||
Comment 1•3 years ago
|
||
Since bug 1722261, thread registrations are not tied to CorePS anymore, ThreadRegistry stores them in a static list.
Also, profiler_register_thread immediately calls ThreadRegistration::RegisterThread -> ThreadRegistration constructor -> ThreadRegistry::Register, which checks if there is a CorePS before working with it.
So this assertion can safely be removed now.
In rare instances, CorePS
may not actually exist (profiler not initialized yet, or already shutdown), and this assertion could trigger and report an unimportant crash.
Comment 3•3 years ago
|
||
bugherder |
Description
•