I too have no issues with 6.9.4 (including laptops, monitors and an older TV) so its quite possible the issue David has is hardware specific. 1) Perhaps its useful to compare what edid your monitors provide using 6.9.3 and 6.9.4 kernels. To do so, one way is to build the edid-decode-git package from the aur which provides edid-decode. (I have not had much success with get- edid/parse-edid tools). Find edid device(s): find /sys/devices -iname edid Which should list them for example like: /sys/devices/pci0000:00/0000:00:02.0/drm/card1/card1-eDP-1/edid Then you can read/parse the edid info: edid-decode < /sys/devices/pci0000:00/0000:00:02.0/drm/card1/card1- eDP-1/edid Perhap comparing the outputs on 6.9.4 vs 6.9.3 might be helpful. 2) I also did a quick git log check on kernel changes between 6.9.3 and 6.9.4 and there are a few graphics related ones - nothing jumped out at me but perhaps it may to others. Course other code changes than drm may well be involved. * drm/panel: sitronix-st7789v: fix display size for jt240mhqs_hwt_ek_e3 panel * drm/panel: sitronix-st7789v: tweak timing for jt240mhqs_hwt_ek_e3 panel * drm/panel: sitronix-st7789v: fix timing for jt240mhqs_hwt_ek_e3 panel * drm/amdgpu: Adjust logic in amdgpu_device_partner_bandwidth() * drm/i915/gt: Fix CCS id's calculation for CCS mode setting * drm/i915/guc: avoid FIELD_PREP warning * drm/xe: Only use reserved BCS instances for usm migrate exec queue * drm/xe: Change pcode timeout to 50msec while polling again * drm/xe: check pcode init status only on root gt of root tile * drm/xe: Add dbg messages on the suspend resume functions. * drm/amd/display: Enable colorspace property for MST connectors * drm/msm/a6xx: Avoid a nullptr dereference when speedbin setting fails * drm/msm/adreno: fix CP cycles stat retrieval on a7xx * drm: zynqmp_dpsub: Always register bridge * Revert "drm/bridge: ti-sn65dsi83: Fix enable error path" * drm/amdgpu: Fix buffer size in gfx_v9_4_3_init_ cp_compute_microcode() and rlc_microcode() * drm/amdgpu: init microcode chip name from ip versions * drm/bridge: imx: Fix unmet depenency for PHY_FSL_SAMSUNG_HDMI_PHY * drm: Make drivers depends on DRM_DW_HDMI * drm/bridge: tc358775: fix support for jeida-18 and jeida-24 * drm/msm/dpu: Add callback function pointer check before its call * drm/meson: gate px_clk when setting rate * drm/mediatek: dp: Fix mtk_dp_aux_transfer return value * drm/msm/dpu: Allow configuring multiple active DSC blocks * drm/msm/dpu: Always flush the slave INTF on the CTL * drm/msm/dsi: Print dual-DSI-adjusted pclk instead of original mode pclk -- Gene