gecko-dev/testing/cppunittest.ini
Yannis Juglaret b1e5578002 Bug 1842088 - Explicitly test DLL blocklist assumptions in isolation with a cppunit test. r=mhowell
In mozilla::freestanding::patched_NtMapViewOfSection, the DLL blocklist
code relies on implicit assumptions about how LoadLibrary(Ex)W and
Thread32Next work internally.

Some of these assumptions turned out to be false on Windows 7. This led
to crash spikes with 115 release; first in bug 1837242, and then later
in bug 1842368. After dealing with the crash spikes, we realized that
some blocklist gtests are still failing on Windows 7, due to such wrong
assumptions. So, in bug 1842088, we are changing the assumptions.

This patch adds a dedicated cppunit test to test these assumptions in
isolation. It is easier to run than blocklist gtests, and should lead to
easier diagnostics in case the assumptions break in the future. This
test also checks the Thread32Next assumptions, which protect us against
the crash from bug 1733532.

Depends on D183530

Differential Revision: https://phabricator.services.mozilla.com/D183757
2023-07-25 06:44:19 +00:00

97 lines
1.8 KiB
INI

[ShowSSEConfig]
[TestPrintf]
[TestAlgorithm]
[TestArray]
[TestArrayUtils]
[TestAtomicBitfields]
[TestAtomics]
[TestBinarySearch]
[TestBitSet]
[TestBloomFilter]
[TestBufferList]
[TestCasting]
[TestCeilingFloor]
[TestCheckedInt]
[TestCompactPair]
[TestCountPopulation]
[TestCountZeroes]
[TestCrossProcessWin]
skip-if = os != 'win'
[TestDefineEnum]
[TestDoublyLinkedList]
[TestDllBlocklistAssumptions]
skip-if = os != 'win'
[TestDllInterceptor]
skip-if = os != 'win'
[TestEndian]
[TestEnumeratedArray]
[TestEnumSet]
[TestEnumTypeTraits]
[TestFastBernoulliTrial]
[TestFloatingPoint]
[TestFunctionRef]
[TestFunctionTypeTraits]
[TestHashTable]
[TestIATPatcher]
skip-if =
os != 'win'
bits == 32 # fails on windows10x32
[TestIntegerPrintfMacros]
[TestIntegerRange]
[TestJSONWriter]
[TestLauncherRegistryInfo]
skip-if = os != 'win'
[TestLinkedList]
[TestMacroArgs]
[TestMacroForEach]
[TestMathAlgorithms]
[TestMaybe]
[TestMemoryPressureWatcherLinux]
skip-if = os != 'linux'
[TestMMPolicy]
skip-if = os != 'win'
[TestMozJemallocUtils]
[TestNativeNt]
skip-if = os != 'win'
[TestUriValidation]
skip-if = os != 'win'
[TestSameBinary]
skip-if = os != 'win'
[TestTimeStampWin]
skip-if = os != 'win'
[TestSafeThreadLocal]
skip-if = os != 'win'
[TestBaseProfiler]
skip-if = tsan # Bug 1804081
[TestNonDereferenceable]
[TestNotNull]
[TestPEExportSection]
skip-if = os != 'win'
[TestPoisonArea]
skip-if = asan || tsan # Not built on sanitizer builds
[TestRange]
[TestRandomNum]
[TestRefPtr]
[TestResult]
[TestRollingMean]
[TestScopeExit]
[TestSegmentedVector]
[TestSHA1]
[TestSIMD]
[TestSmallPointerArray]
[TestSaturate]
[TestSplayTree]
[TestSPSCQueue]
[TestStackCookie]
skip-if = os != 'win'
[TestTextUtils]
[TestThreadSafeWeakPtr]
[TestTypedEnum]
[TestUniquePtr]
[TestUtf8]
[TestVariant]
[TestVector]
[TestWeakPtr]
[TestWrappingOperations]
[TestXorShift128PlusRNG]