WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
272572
Cache preferences updated while child process was suspended
https://bugs.webkit.org/show_bug.cgi?id=272572
Summary
Cache preferences updated while child process was suspended
Chris Dumez
Reported
2024-04-11 21:36:28 PDT
Whenever system preferences change, the UIProcess detects this and broadcasts the changes to every child process via IPC. A lot of these processes are often suspended, which means that they're not processing incoming IPC and the IPC queue will grow, using more and more memory. To reduce memory usage in such cases, I am now caching preference updates happening during suspension in a HashMap. This saves memory because there is no IPC overhead. Also, when the same preferences changes several times, we just overwrite it in the map, instead of queuing a new IPC message. Once the process resumes, we send all updated preferences in a single IPC instead of one per preference change.
Attachments
Add attachment
proposed patch, testcase, etc.
Chris Dumez
Comment 1
2024-04-11 21:38:16 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/27182
EWS
Comment 2
2024-04-12 08:08:06 PDT
Committed
277427@main
(c626fbfed63e): <
https://commits.webkit.org/277427@main
> Reviewed commits have been landed. Closing PR #27182 and removing active labels.
Radar WebKit Bug Importer
Comment 3
2024-04-12 08:09:14 PDT
<
rdar://problem/126350340
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug