gecko-dev/xpcom/build
kriswright ed84376d75 Bug 1704391 - Address timers cancelled after timer shutdown. r=xpcom-reviewers,nika
There is a chance that a timer will be cancelled by its holder after the timer thread and all of the timers have been cleaned up. Doing this can result in a hang on the mutex lock, likely because the mutex is now pointing to something else. I'm not completely familiar with the inner workings of our timers so I'm not sure what the best fix is here. I decided to follow a pattern in our threading shutdown routines and flag the timer shutdown so the timers can't attempt to cancel past a certain point where they would be shutdown anyway. This is tricky because there are timers created during XPCOM shutdown all the way up until we shutdown the timer thread. Checking for the timer thread outside of the lock could also result in a race with timer shutdown. This value is an attempt to address this without breaking timers shutdown.

Differential Revision: https://phabricator.services.mozilla.com/D113448
2021-04-30 00:58:42 +00:00
..
BinaryPath.h
FileLocation.cpp
FileLocation.h
GeckoProcessTypes.h
IOInterposer.cpp
IOInterposer.h
IOInterposerPrivate.h
LateWriteChecks.cpp Bug 1515229 - Make MozStackWalk/MozWalkTheStack frame skipping more reliable. r=gerald,nika,bobowen,jld 2021-04-16 04:06:02 +00:00
LateWriteChecks.h
MainThreadIOLogger.cpp
MainThreadIOLogger.h
NSPRInterposer.cpp
NSPRInterposer.h
Omnijar.cpp
Omnijar.h
PoisonIOInterposer.h
PoisonIOInterposerBase.cpp
PoisonIOInterposerMac.cpp
PoisonIOInterposerStub.cpp
PoisonIOInterposerWin.cpp
Services.py Bug 1677866 - Report memory allocated by `cert_storage` crate r=keeler,emilio 2021-04-19 22:12:56 +00:00
SmallArrayLRUCache.h
XPCOM.h
XPCOMInit.cpp Bug 1704391 - Address timers cancelled after timer shutdown. r=xpcom-reviewers,nika 2021-04-30 00:58:42 +00:00
XPCOMModule.h
XPCOMModule.inc
XREAppData.h
XREChildData.h
XREShellData.h
components.conf
mach_override.c
mach_override.h
moz.build
nsXPCOM.h Bug 1704391 - Address timers cancelled after timer shutdown. r=xpcom-reviewers,nika 2021-04-30 00:58:42 +00:00
nsXPCOMCID.h
nsXPCOMCIDInternal.h
nsXPCOMPrivate.h
nsXULAppAPI.h
perfprobe.cpp
perfprobe.h
xpcom_alpha.def
xrecore.h