Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5ad829657f5f1cbec32467fb78be2fcd917a447d
https://github.com/WebKit/WebKit/commit/5ad829657f5f1cbec32467fb78be2fcd917a447d
Author: Ben Nham <[email protected]>
Date: 2026-07-12 (Sun, 12 Jul 2026)
Changed paths:
M Source/WebKit/UIProcess/WebPageProxy.cpp
Log Message:
-----------
Avoid unnecessary WebContent IPC when logging frame trees
https://bugs.webkit.org/show_bug.cgi?id=319209
rdar://182063896
Reviewed by Chris Dumez.
When sending the com.apple.WebKit.logFrameTrees notifyd notification,
oftentimes it takes a long
time (on the order of seconds) to dump the frame tree to the system log. This
is because
WebPageProxy::logFrameTree currently calls getAllFrames, which requires sending
an async IPC with
reply handler to all frames in the page, some of which might be hosted in
processes running at very
low priority. This is unnecessary; instead, we should just walk
the frame tree on the UIProcess side
instead and avoid the WebContent round trip.
This is important because we emit these notifications (with a timeout) as part
of our memory
benchmarks, and without the frame tree it becomes much harder to understand how
memory regressions
are distributed to various frame processes.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::logFrameTreeHelper):
(WebKit::WebPageProxy::logFrameTree):
(WebKit::logFrameTreeRoot): Deleted.
Canonical link:
https://flagged.apple.com:443/proxy?t2=DK2r5j1BC9&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE3MDE1QG1haW4=&emid=836b7e38-3cd4-4625-aea9-8b595cc50d84&c=11
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications