System
- GPU: AMD Radeon RX 9070 XT (RADV GFX1201) + AMD 9950X3D iGPU (RDNA3 Raphael)
- Driver: mesa 26.0.5 (RADV)
- OS: CachyOS, kernel 7.0.1-1-cachyos
- Display server: KDE Plasma Wayland
- Render nodes:
/dev/dri/renderD128= iGPU,/dev/dri/renderD129= 9070 XT
Problem
Chrome showed:
Video Encode: Software only. Hardware acceleration disabledSkia Backend: GaneshGL(not Vulkan)GPU1: *ACTIVEon iGPU instead of dGPU- Blue artifact GPU crashes (RDNA4 display controller timeout:
REG_WAIT timeout optc31_disable_crtc)
Root Cause
Two --enable-features lines in ~/.config/chrome-flags.conf. Chrome only honors the last --enable-features flag — all previous ones are silently dropped.
# Line 1 (DROPPED by Chrome):
--enable-features=VaapiVideoDecoder,AcceleratedVideoDecodeLinuxGL,...VaapiIgnoreDriverChecks,...
# Line 2 (kept, overrides Line 1):
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan
This caused VA-API video decode/encode features to be completely lost.
Fix
Merge all features into a single --enable-features line.
~/.config/chrome-flags.conf
--ignore-gpu-blocklist
--enable-gpu-rasterization
--enable-zero-copy
--ozone-platform-hint=auto
--use-gl=angle
--use-angle=vulkan
--enable-features=VaapiVideoDecoder,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL,AcceleratedVideoEncoder,VaapiIgnoreDriverChecks,UseMultiPlaneFormatForHardwareVideo,Vulkan,VulkanFromANGLE,DefaultANGLEVulkan
Result
Canvas: Hardware accelerated
Video Decode: Hardware accelerated (h264, vp9, hevc, av1)
Video Encode: Hardware accelerated (h264, av1)
Vulkan: Enabled
WebGL: Hardware accelerated
WebGPU: Hardware accelerated
Skia Backend: GaneshVulkan
GPU0: AMD Radeon RX 9070 XT *ACTIVE
Key Notes
- Never use multiple
--enable-featureslines — Chrome silently drops all but the last one --use-angle=vulkanis preferred over--use-angle=glfor RDNA4 (better stability, no blue artifacts)--ozone-platform-hint=auto(not--ozone-platform=wayland) avoids the Vulkan incompatibility warning--render-node-overridemay appear in command line from external sources (KDE/desktop file) — Chrome still picks the correct GPU based on display connection- Harmless warnings remain:
'--ozone-platform=wayland' is not compatible with VulkanandeglCreateContext: Requested version is not supported
Verification
- Open
chrome://gpu - Check Graphics Feature Status — all should show “Hardware accelerated”
- Check Video Acceleration Information — should list decode/encode codecs
- Check Skia Backend — should be
GaneshVulkan - Check GPU0 — should show 9070 XT with
*ACTIVE - Check GPU process crash count — should be
0
Rollback
If issues arise, revert to ANGLE OpenGL:
--use-gl=angle
--use-angle=gl
--enable-features=VaapiVideoDecoder,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL,AcceleratedVideoEncoder,VaapiIgnoreDriverChecks,UseMultiPlaneFormatForHardwareVideo
Leave a Reply