gecko-dev/startupcache
Doug Thayer 5f41a2f565 Bug 1658732 - Replace mStartupFinished with TryLock in StartupCache r=froydnj
To be honest, it's still a mystery why we observed a regression in
sessionrestore_no_auto_restore in bug 1658732. The regression won't reproduce
on profiled runs, and the bad recordings happen before the supposedly offending
code ever actually runs. It feels most likely that it is a more or less random
confluence of factors causing a regression; however, 33% is too large of a
number to ignore.

The changes in this patch do not seem to yield the same regression, and they
are arguably more correct anyway. Instead of simply turning off the cache after
startup is finished, we simply avoid blocking waiting for the write from inside
GetBuffer. This way, if the write is not getting in the way of GetBuffer, we
can still benefit from a cached version of whatever it is we're looking for.

Differential Revision: https://phabricator.services.mozilla.com/D87221
2020-08-20 18:37:21 +00:00
..
test Bug 1658732 - Replace mStartupFinished with TryLock in StartupCache r=froydnj 2020-08-20 18:37:21 +00:00
components.conf
moz.build
nsIStartupCacheInfo.idl
PStartupCache.ipdl
StartupCache.cpp Bug 1658732 - Replace mStartupFinished with TryLock in StartupCache r=froydnj 2020-08-20 18:37:21 +00:00
StartupCache.h Bug 1658732 - Replace mStartupFinished with TryLock in StartupCache r=froydnj 2020-08-20 18:37:21 +00:00
StartupCacheChild.cpp
StartupCacheChild.h
StartupCacheInfo.cpp
StartupCacheInfo.h
StartupCacheParent.cpp
StartupCacheParent.h
StartupCacheUtils.cpp Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
StartupCacheUtils.h