Summary
In a macOS guest VM (Apple Virtualization Framework) on M3 Pro, Firefox fails to utilize hardware acceleration despite the Guest OS having full Metal access. Safari and native apps perform perfectly, but Firefox falls back to WebRender (Software).
The logs show that while Firefox's WebGPU implementation correctly identifies the "Apple Paravirtual device," the Compositing engine blacklists it.
Environment
- Host: MacBook Pro (M3 Pro)
- Host OS: macOS 26.4.0 (Tahoe)
- Guest OS: macOS 26.4.0
- Virtualization: UTM (Apple Virtualization Backend)
- Firefox: 149.0 (Stable)
Key Technical Data (from about:support)
- Compositing:
WebRender (Software)
- Decision Log:
WEBRENDER_QUALIFIED: blacklisted by env: Acceleration blocked by platform
- Failure Code:
FEATURE_FAILURE_WEBRENDER_INITIALIZE_RACE_FIRST
- WebGPU Status: SUCCESS - Identifies
wgpuName: "Apple Paravirtual device" on Metal backend.
The Conflict
There is a clear discrepancy between Firefox's WebGPU module (which accepts the virtual driver) and its WebRender/Compositing module (which blacklists it). Native guest apps (Safari/Maps) confirm that the AppleParavirtualizedGraphics.kext is functioning correctly in the guest.
Steps Taken
- Confirmed fluid 3D performance in Safari and Apple Maps.
- Attempted to bypass via
about:config (gfx.webrender.all, layers.acceleration.force-enabled, webgl.force-enabled).
- Results: Firefox continues to report
FEATURE_FAILURE_CGL_FBO and Exhausted GL driver options.
- Search Check: Searched UTM and Mozilla issues; no existing reports found for this specific driver blocklist on Apple Silicon virtualization.
Expected Result
Firefox should whitelist the Apple Paravirtual device for WebRender, as it already does for WebGPU.
Summary
In a macOS guest VM (Apple Virtualization Framework) on M3 Pro, Firefox fails to utilize hardware acceleration despite the Guest OS having full Metal access. Safari and native apps perform perfectly, but Firefox falls back to WebRender (Software).
The logs show that while Firefox's WebGPU implementation correctly identifies the "Apple Paravirtual device," the Compositing engine blacklists it.
Environment
Key Technical Data (from about:support)
WebRender (Software)WEBRENDER_QUALIFIED: blacklisted by env: Acceleration blocked by platformFEATURE_FAILURE_WEBRENDER_INITIALIZE_RACE_FIRSTwgpuName: "Apple Paravirtual device"onMetalbackend.The Conflict
There is a clear discrepancy between Firefox's WebGPU module (which accepts the virtual driver) and its WebRender/Compositing module (which blacklists it). Native guest apps (Safari/Maps) confirm that the
AppleParavirtualizedGraphics.kextis functioning correctly in the guest.Steps Taken
about:config(gfx.webrender.all,layers.acceleration.force-enabled,webgl.force-enabled).FEATURE_FAILURE_CGL_FBOandExhausted GL driver options.Expected Result
Firefox should whitelist the
Apple Paravirtual devicefor WebRender, as it already does for WebGPU.