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

Reply via email to