[webkit-changes] [WebKit/WebKit] 20d3e8: [Cocoa] Extend access to the 'com.apple.gputools.s...
Brent Fulgham
noreply at github.com
Fri May 12 15:15:36 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 20d3e87d72695d65ea71a557c33ba0f5148a2267
https://github.com/WebKit/WebKit/commit/20d3e87d72695d65ea71a557c33ba0f5148a2267
Author: Brent Fulgham <bfulgham at apple.com>
Date: 2023-05-12 (Fri, 12 May 2023)
Changed paths:
M Source/WebKit/GPUProcess/GPUProcess.cpp
M Source/WebKit/GPUProcess/GPUProcess.h
M Source/WebKit/GPUProcess/GPUProcess.messages.in
M Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp
M Source/WebKit/GPUProcess/GPUProcessCreationParameters.h
M Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm
M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
M Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp
M Source/WebKit/UIProcess/GPU/GPUProcessProxy.h
Log Message:
-----------
[Cocoa] Extend access to the 'com.apple.gputools.service' mach service if Web Inspector is enabled
https://bugs.webkit.org/show_bug.cgi?id=256673
<rdar://107631614>
Reviewed by Per Arne Vollan.
Access to the `com.apple.gputools.service` mach service is denied to the GPU Process.
Unfortunately, some developer diagnostic tools for graphics investigation need this
access to work.
We should have the UI Process extend permission for the GPU Process to talk to relevant
services when the Web Inspector has been enabled.
* Source/WebKit/GPUProcess/GPUProcess.cpp:
(WebKit::GPUProcess::initializeGPUProcess): Consume the GPU tools extensions if present.
(WebKit::GPUProcess::updateSandboxAccess): Move outside the MEDIA_SESSION enablement macro
so we can use it for WebInspector purposes.
* Source/WebKit/GPUProcess/GPUProcess.h:
* Source/WebKit/GPUProcess/GPUProcess.messages.in: Ditto.
* Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp:
(WebKit::GPUProcessCreationParameters::encode const): Update for additional sandbox extensions.
(WebKit::GPUProcessCreationParameters::decode): Ditto.
* Source/WebKit/GPUProcess/GPUProcessCreationParameters.h:
* Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm:
(WebKit::GPUProcessProxy::platformInitializeGPUProcessParameters): Add GPU tools extensions to
process launch parameters if needed.
(WebKit::GPUProcessProxy::createGPUToolsSandboxExtensionHandlesIfNeeded): Added.
* Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess): Extend GPU tools extensions to the GPU
process if they haven't been sent before, but the WebInspector is now enabled.
* Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::GPUProcessProxy):
* Source/WebKit/UIProcess/GPU/GPUProcessProxy.h:
Canonical link: https://commits.webkit.org/264029@main
More information about the webkit-changes
mailing list