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
PStartupCache.ipdl Bug 1627075 - OMT and OMP StartupCache access r=froydnj 2020-07-08 02:46:11 +00:00
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 Bug 1651941 - Free unreferenced child StartupCache entries on send r=froydnj 2020-07-22 20:31:31 +00:00
StartupCacheChild.h Bug 1651941 - Avoid unnecessary empty StartupCaches r=froydnj 2020-07-22 20:31:21 +00:00
StartupCacheInfo.cpp Bug 1626815 - Expose startup cache info to about:support. r=froydnj,fluent-reviewers 2020-04-02 19:40:39 +00:00
StartupCacheInfo.h Bug 1626815 - Expose startup cache info to about:support. r=froydnj,fluent-reviewers 2020-04-02 19:40:39 +00:00
StartupCacheParent.cpp Bug 1651941 - Avoid unnecessary empty StartupCaches r=froydnj 2020-07-22 20:31:21 +00:00
StartupCacheParent.h Bug 1651941 - Avoid unnecessary empty StartupCaches r=froydnj 2020-07-22 20:31:21 +00:00
StartupCacheUtils.cpp Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
StartupCacheUtils.h Bug 1550108 - Eliminate large buffer copies from StartupCache r=froydnj 2019-10-04 20:45:09 +00:00
components.conf Bug 1626815 - Expose startup cache info to about:support. r=froydnj,fluent-reviewers 2020-04-02 19:40:39 +00:00
moz.build Bug 1627075 - OMT and OMP StartupCache access r=froydnj 2020-07-08 02:46:11 +00:00
nsIStartupCacheInfo.idl Bug 1626815 - Expose startup cache info to about:support. r=froydnj,fluent-reviewers 2020-04-02 19:40:39 +00:00