Cold boot/login applies wrong triple-monitor layout/sizing on NVIDIA; logout/login restores output configuration

KWin X11 diagnostic bundle: service status, current-boot KWin journal excerpts, prior kwin_x11 coredump summaries/details, and NVIDIA/DRM kernel log excerpts

I selected the multi-screen component because this is an X11 triple-monitor issue; the output configuration component appears to be marked Wayland-only.

===

DESCRIPTION

After cold boot and login, my triple-monitor Plasma X11 session sometimes comes up with the display layout/sizing wrong. Logging out and back in, or restarting KWin, can restore the correct layout.

This appears separate from Bug 521954 / the resolved logout teardown crash. The linked fixes for that bug appear to address shutdown/teardown ordering and RenderLoop/workspace lifetime issues. My remaining problem happens at cold boot/login/display initialization.

SYSTEM

Fedora 44 KDE
Plasma X11 session
kwin-x11-6.7.0-1.fc44.x86_64
NVIDIA driver 595.80
Triple-monitor setup with mixed refresh rates

SYMPTOM

On cold boot/login, display layout/sizing can be wrong.
After logout/login or KWin restart, the layout can recover.

RELATED LOG EVIDENCE

On a prior event, kwin_x11 produced SIGABRT coredumps.
On a later boot, plasma-kwin_x11.service stopped/restarted and logged OpenGL context cleanup warnings such as:

Could not delete render time query because no context is current
Could not delete framebuffer because no context is current

In that later event, KWin restarted successfully as /usr/bin/kwin_x11 --replace.
I reviewed KWin MR 9443, referenced as the Plasma 6.7.2 fix for Bug 521909. That MR addresses RenderLoop/workspace and EGL teardown during compositor shutdown. It does not modify output discovery, KScreen configuration, DRM modesetting, framebuffer initialization, or cold-boot startup ordering. My remaining issue occurs during first-login initialization before any logout, and the bad and recovered kscreen-doctor -o outputs are logically identical. Therefore MR 9443 may fix the associated logout crash, but it does not appear to address this report’s visible cold-boot output corruption. I will still retest 6.7.2 for confirmation.

 MR 9443 fixes                                                                          My remaining issue
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   Crash during KWin shutdown/logout                                Wrong rendering after cold boot/first login
  ─────────────────────────────────────────  ─────────────────────────────────────────────────────────
   Missing workspace() guard in RenderLoop                      Logical output configuration is already correct
  ─────────────────────────────────────────  ─────────────────────────────────────────────────────────
   Compositor teardown ordering                                           Visible output differs despite identical geometry/modes
  ─────────────────────────────────────────  ─────────────────────────────────────────────────────────
   EGL context destruction                                                        Logout/login rebuilds working display state

  The key commit explicitly says:   “At shutdown, the compositor is destroyed after the workspace…”

  None of MR 9443’s six changes touches:

  - DRM connector discovery
  - Output geometry or modes
  - KScreen configuration application
  - Initial framebuffer setup
  - Multi-monitor startup ordering
  - NVIDIA display initialization

  “At shutdown, the compositor is destroyed after the workspace…”

  None of MR 9443’s six changes touches:

  - DRM connector discovery
  - Output geometry or modes
  - KScreen configuration application
  - Initial framebuffer setup
  - Multi-monitor startup ordering
  - NVIDIA display initialization
Cold-boot KWin journal and NVIDIA kernel log snippets

Jul 02 22:02:05 fedora systemd[9993]: Starting plasma-kwin_x11.service - KDE Window Manager...
Jul 02 22:02:05 fedora systemd[9993]: Started plasma-kwin_x11.service - KDE Window Manager.
Jul 02 22:02:12 fedora kwin_x11[10391]: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: App info not found for 'org.kde.kwin'")
Jul 02 22:02:12 fedora kwin_x11[10391]: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: App info not found for 'org.kde.kwin'")
Jul 02 22:02:18 fedora kwin_x11[10391]: QDBusConnection: couldn't handle call to Teardown, no slot matched
Jul 02 22:02:18 fedora kwin_x11[10391]: QDBusConnection: couldn't handle call to Teardown, no slot matched
Jul 02 22:02:18 fedora kwin_x11[10391]: Could not find slot Krunner1Adaptor::Teardown
Jul 02 22:02:27 fedora systemd[9993]: Stopping plasma-kwin_x11.service - KDE Window Manager...
Jul 02 22:02:27 fedora kwin_x11[10391]: Could not delete render time query because no context is current
Jul 02 22:02:27 fedora kwin_x11[10391]: Could not delete framebuffer because no context is current
Jul 02 22:02:27 fedora systemd[9993]: plasma-kwin_x11.service: Main process exited, code=exited, status=15/n/a
Jul 02 22:02:27 fedora systemd[9993]: plasma-kwin_x11.service: Failed with result 'exit-code'.
Jul 02 22:02:27 fedora systemd[9993]: Stopped plasma-kwin_x11.service - KDE Window Manager.
Jul 02 22:02:27 fedora systemd[9993]: plasma-kwin_x11.service: Consumed 1.730s CPU time over 22.473s wall clock time, 66.8M memory peak.
Jul 02 22:02:42 fedora systemd[9993]: Starting plasma-kwin_x11.service - KDE Window Manager...
Jul 02 22:02:42 fedora systemd[9993]: Started plasma-kwin_x11.service - KDE Window Manager.
Jul 02 22:02:47 fedora kwin_x11[13698]: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: App info not found for 'org.kde.kwin'")
Jul 02 22:02:47 fedora kwin_x11[13698]: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: App info not found for 'org.kde.kwin'")
Jul 02 22:03:34 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 30055, resource id: 20972988, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:03:34 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 30056, resource id: 48234525, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:05:11 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 45715, resource id: 20974359, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:05:11 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 45716, resource id: 48234527, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:05:54 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 55017, resource id: 20975228, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:05:54 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 55018, resource id: 48234530, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:06:48 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 62305, resource id: 20975909, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:06:48 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 62306, resource id: 48234532, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:07:47 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 5740, resource id: 20976742, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:07:47 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 5741, resource id: 48234534, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:10:54 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 12973, resource id: 20982186, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:10:54 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 12974, resource id: 92274710, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:14:36 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 6413, resource id: 20987041, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:14:36 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 6414, resource id: 48234540, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:14:42 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 7294, resource id: 20987080, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:14:42 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 7295, resource id: 48234543, major code: 129 (SHAPE), minor code: 6 (Input)
Jul 02 22:34:06 fedora kwin_x11[13698]: XCB error: 152 (BadDamage), sequence: 12652, resource id: 21024732, major code: 143 (DAMAGE), minor code: 2 (Destroy)
Jul 02 22:34:06 fedora kwin_x11[13698]: XCB error: 3 (BadWindow), sequence: 12653, resource id: 48234577, major code: 129 (SHAPE), minor code: 6 (Input)

=== KERNEL LOGS ===

[    1.084147] ACPI: bus type drm_connector registered
[    1.230304] simple-framebuffer simple-framebuffer.0: [drm] Registered 1 planes with drm panic
[    1.230319] [drm] Initialized simpledrm 1.0.0 for simple-framebuffer.0 on minor 0
[    1.232806] simple-framebuffer simple-framebuffer.0: [drm] fb0: simpledrmdrmfb frame buffer device
[    6.380726] systemd[1]: modprobe@drm.service - Load Kernel Module drm skipped, unmet condition check ConditionKernelModuleLoaded=!drm
[    7.071510] NVRM: loading NVIDIA UNIX Open Kernel Module for x86_64  595.80  Release Build  (dvs-builder@U22-I3-AF05-29-2)  Thu May 21 19:21:58 UTC 2026
[    7.129559] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[    8.919264] [drm] Initialized nvidia-drm 0.0.0 for 0000:01:00.0 on minor 1
[    9.062606] fbcon: nvidia-drmdrmfb (fb0) is primary device
[    9.062612] nvidia 0000:01:00.0: [drm] fb0: nvidia-drmdrmfb frame buffer device