[webkit-changes] [WebKit/WebKit] fcb007: Disable BackgroundProcessResponsivenessTimer when ...
bnham
noreply at github.com
Fri Dec 6 19:31:49 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: fcb00789e9e97821473027e844e7bf12a32b8a99
https://github.com/WebKit/WebKit/commit/fcb00789e9e97821473027e844e7bf12a32b8a99
Author: Ben Nham <nham at apple.com>
Date: 2024-12-06 (Fri, 06 Dec 2024)
Changed paths:
M Source/WebKit/UIProcess/BackgroundProcessResponsivenessTimer.cpp
Log Message:
-----------
Disable BackgroundProcessResponsivenessTimer when RunningBoard throttling is enabled
https://bugs.webkit.org/show_bug.cgi?id=284206
rdar://141073619
Reviewed by Brady Eidson.
It looks like BackgroundProcessResponsivenessTimer is causing spurious background process kills on
oversubscribed systems. There is a comment in this class saying that it is already disabled on iOS
because we use RunningBoard on iOS to manage processes, and there is a good chance that the
background process is suspended, so the check is just unnecessary work. This is true on macOS as
well--we've been using RunningBoard to manage processes on macOS for years. So let's just
disable this class on macOS as well.
We also still have CPUMonitor enabled, so a background process that uses a ton of CPU in the
background but does not suspend will be killed for ProcessTerminationReason::ExceededCPULimit. So
this shouldn't have a practical power impact.
* Source/WebKit/UIProcess/BackgroundProcessResponsivenessTimer.cpp:
(WebKit::BackgroundProcessResponsivenessTimer::shouldBeActive const):
Canonical link: https://commits.webkit.org/287489@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list