From 6d2648d1168ef40daaf4cff84abb12ddc5bc962a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96zg=C3=BCr=20Deveci?= Date: Mon, 26 Feb 2024 15:31:42 +0100 Subject: [PATCH] Do critical and synchonous memory release when limit is exceeded and print log message. Signed-off-by: Andrzej Surdej --- Source/WTF/wtf/MemoryPressureHandler.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Source/WTF/wtf/MemoryPressureHandler.cpp b/Source/WTF/wtf/MemoryPressureHandler.cpp index 6f87999fcf2c3..03c7d56e1345e 100644 --- a/Source/WTF/wtf/MemoryPressureHandler.cpp +++ b/Source/WTF/wtf/MemoryPressureHandler.cpp @@ -303,6 +303,13 @@ void MemoryPressureHandler::measurementTimerFired() releaseMemory(Critical::No, Synchronous::No); break; case MemoryUsagePolicy::Strict: + if (footprint > m_configuration.baseThreshold || footprintVideo > m_configuration.baseThresholdVideo) { + WTFLogAlways("MemoryPressure: Critical memory usage (PID=%d) [MB]: %zu (of %zu), video: %zu (of %zu)\n", + getpid(), footprint / MB, m_configuration.baseThreshold / MB, + footprintVideo / MB, m_configuration.baseThresholdVideo / MB); + releaseMemory(Critical::Yes, Synchronous::Yes); + break; + } releaseMemory(Critical::Yes, Synchronous::No); break; }