https://bugs.kde.org/show_bug.cgi?id=523104

            Bug ID: 523104
           Summary: HDR swapchain colorspace stuck at SRGB_NONLINEAR via
                    VK_hdr_layer despite protocol exposed (NVIDIA Optimus,
                    610.43.03)
    Classification: Plasma
           Product: kwin
      Version First 6.7.3
       Reported In:
          Platform: CachyOS
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: colour-management
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
  Target Milestone: ---

SUMMARY

On an NVIDIA Optimus laptop (AMD iGPU + NVIDIA dGPU) running Plasma 6.7.3 with
HDR enabled, Vulkan clients using the VK_hdr_layer (Zamundaaa/VK_hdr_layer,
vk-hdr-layer-kwin6-git) never negotiate an HDR10 swapchain colorspace. The
swapchain is always created with VK_COLOR_SPACE_SRGB_NONLINEAR_KHR instead of
VK_COLOR_SPACE_HDR10_ST2084_EXT, even though the HDR10 colorspace is confirmed
available in the surface format list, the layer is correctly loaded, and KWin
correctly exposes the relevant Wayland color-management protocols.

This reproduces identically with two independent Vulkan clients (vkcube and
mpv), ruling out an application-specific bug.

STEPS TO REPRODUCE

1. Enable HDR in System Settings → Display Configuration (confirmed active via
`kscreen-doctor -o`, output shows "HDR: enabled")
2. Install vk-hdr-layer-kwin6-git and confirm registration:
   find /usr/share/vulkan -iname "*hdr*"
   → /usr/share/vulkan/implicit_layer.d/VkLayer_hdr_wsi.x86_64.json
   vulkaninfo --summary | grep -i hdr
   → VK_LAYER_hdr_wsi   WSI HDR Layer (x86_64)   1.3.221  version 1
3. Confirm KWin exposes the color-management protocol:
   wayland-info | grep -i color
   → frog_color_management_factory_v1, version: 1
   → wp_color_manager_v1, version: 2
   → wp_color_representation_manager_v1, version: 1
4. Run either test client:
   ENABLE_HDR_WSI=1 vkcube --present_mode 0 2>&1 | grep -i colorspace
   ENABLE_HDR_WSI=1 mpv --fs --vo=gpu-next --target-colorspace-hint
--gpu-api=vulkan --gpu-context=waylandvk <HDR10 file>

OBSERVED RESULT

Swapchain is always created with VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, for both
vkcube and mpv, identically. mpv's own stats overlay confirms actual output
stays SDR (Primaries: bt.709, Transfer: gamma2.2, Display: 203 cd/m²) despite
the source content correctly reporting HDR10 (bt.2020/pq, proper HDR10
MaxCLL/mastering metadata).

EXPECTED RESULT

Swapchain colorspace should negotiate to VK_COLOR_SPACE_HDR10_ST2084_EXT
(confirmed available in the surface format list:
VK_FORMAT_A2B10G10R10_UNORM_PACK32 → VK_COLOR_SPACE_HDR10_ST2084_EXT).

ALREADY RULED OUT

- Windowed vs fullscreen (tested both, no difference)
- Single vs dual output — tested disabling the internal laptop panel via
kscreen-doctor, no change
- --target-colorspace-hint present/absent — no effect either way
- KWIN_DRM_USE_COLOR_PIPELINE=1 override — confirmed inherited by the
kwin_wayland process via /proc/<pid>/environ, no effect on swapchain colorspace
- Plasma 6.7.2 → 6.7.3 update — identical behavior on both

ADDITIONAL INFORMATION

Aware of KDE bug 520842 (KWin disables NVIDIA DRM color pipelines due to a
crash on the 610.x driver line) — this appears to be a distinct, lower-level
hardware pipeline issue from the Vulkan swapchain colorspace negotiation being
tested here, since the KWIN_DRM_USE_COLOR_PIPELINE toggle for that bug had no
effect on this symptom.

Also worth noting: this is an NVIDIA Optimus hybrid laptop (AMD Ryzen 5800H
iGPU + RTX 3060 dGPU). A related but distinct symptom is described in
Zamundaaa/VK_hdr_layer issue #16 ("Broken on NVIDIA optimus laptops") on
another Optimus laptop — HDR10 colorspace negotiation succeeds there but the
screen goes black, whereas in this case negotiation never leaves SRGB at all.
Possibly a related root cause specific to hybrid-GPU configurations, though the
failure modes differ.

SOFTWARE/OS VERSIONS

Operating System: CachyOS Linux
KDE Plasma Version: 6.7.3
KWin Version: 6.7.3
Graphics Platform: Wayland
Laptop: Lenovo Legion 5 Pro 16ACH6H (NVIDIA Optimus: AMD Ryzen 7 5800H iGPU +
NVIDIA RTX 3060 dGPU)
Graphics Driver: nvidia-open 610.43.03
Mesa: 26.1.4
mpv: 0.41.0
vk-hdr-layer-kwin6-git: r47.303e0c6-1

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to