Bug 417543 - Refresh rate changes from 144hz to 60hz sometimes after switching monitor inputs
Summary: Refresh rate changes from 144hz to 60hz sometimes after switching monitor inputs
Status: RESOLVED UPSTREAM
Alias: None
Product: KScreen
Classification: Plasma
Component: common (show other bugs)
Version: 5.18.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: kscreen-bugs-null@kde.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-02-13 07:58 UTC by Rokas Kupstys
Modified: 2022-11-09 21:03 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rokas Kupstys 2020-02-13 07:58:42 UTC
I have two monitors: 1440p 144hz with freesync and 1080p 60hz. 144hz monitor resets it's refresh rate to 60hz quite often, but this is not 100% reproducible. I use monitor input switching a lot (/dev/i2c-*, ddcutil). This makes me think that merely switching monitor input source is enough to trigger this issue, as switching back to input driven by linux would sometimes initialize it at 60hz and not 144hz.

Important detail: Default supported freesync range is 35-90hz on this screen. I use modded edid firmware to change this range to 57-144hz. This works perfectly fine.

It would be great if monitor could keep refresh rate configured in display settings instead of sometimes switching to lower one for some reason.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Archlinux
KDE Plasma Version: 5.18.0
KDE Frameworks Version: 5.67.0
Qt Version: 5.14.1
Kernel: 5.5.3
Driver: amdgpu
GPU: RX580
Screen: Asus MG279 with freesync enabled

~ % cat /etc/X11/xorg.conf.d/20-amdgpu.conf 
Section "Device"
     Identifier "AMD"
     Driver "amdgpu"
     Option "TearFree" "true"
     Option "VariableRefresh" "true"
EndSection

xrandr output:
Screen 0: minimum 320 x 200, current 4480 x 1440, maximum 16384 x 16384
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 connected primary 2560x1440+0+0 (normal left inverted right x axis y axis) 597mm x 336mm
   2560x1440     59.95 + 143.86*  119.88    89.91  
   1920x1200     59.95  
   1920x1080    143.85    99.92   119.98    89.90    60.00    60.00    50.00    59.94  
   1600x1200     59.95  
   1680x1050     59.95  
   1600x900      89.91    60.00  
   1280x1024     75.02  
   1440x900      59.95  
   1280x800      59.95  
   1152x864      75.00  
   1280x720      89.96    60.00    50.00    59.94  
   1440x576      50.00  
   1024x768      75.03    70.07    60.00  
   1440x480      60.00    59.94  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   640x480       75.00    66.67    60.00    59.94  
   720x400       70.08  
HDMI-A-0 disconnected (normal left inverted right x axis y axis)
HDMI-A-1 disconnected (normal left inverted right x axis y axis)
DVI-D-0 connected 1920x1080+2560+0 (normal left inverted right x axis y axis) 510mm x 290mm
   1920x1080     60.00*+
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      60.00  
   1280x960      60.00  
   1280x800      60.00  
   1152x864      75.00  
   1280x720      60.00  
   1024x768      75.03    60.00  
   832x624       74.55  
   800x600       75.00    60.32    56.25  
   640x480       75.00    59.94  
   720x400       70.08

~ % qdbus org.kde.KWin /KWin supportInformation
KWin Support Information:
The following information should be used when requesting support on e.g. https://forum.kde.org.
It provides information about the currently running instance, which options are used,
what OpenGL driver and which effects are running.
Please post the information provided underneath this introductory text to a paste bin service
like https://paste.kde.org instead of pasting into support threads.

==========================

Version
=======
KWin version: 5.18.0
Qt Version: 5.14.1
Qt compile version: 5.14.1
XCB compile version: 1.13.1

Operation Mode: X11 only

Build Options
=============
KWIN_BUILD_DECORATIONS: yes
KWIN_BUILD_TABBOX: yes
KWIN_BUILD_ACTIVITIES: yes
HAVE_DRM: yes
HAVE_GBM: yes
HAVE_EGL_STREAMS: yes
HAVE_X11_XCB: yes
HAVE_EPOXY_GLX: yes
HAVE_WAYLAND_EGL: yes

X11
===
Vendor: The X.Org Foundation
Vendor Release: 12007000
Protocol Version/Revision: 11/0
SHAPE: yes; Version: 0x11
RANDR: yes; Version: 0x14
DAMAGE: yes; Version: 0x11
Composite: yes; Version: 0x4
RENDER: yes; Version: 0xb
XFIXES: yes; Version: 0x50
SYNC: yes; Version: 0x31
GLX: yes; Version: 0x0

Decoration
==========
Plugin: org.kde.breeze
Theme: 
Plugin recommends border size: None
Blur: 0
onAllDesktopsAvailable: false
alphaChannelSupported: true
closeOnDoubleClickOnMenu: false
decorationButtonsLeft: 5, 4, 3, 6, 0
decorationButtonsRight: 
borderSize: 0
gridUnit: 10
font: Noto Sans,10,-1,5,50,0,0,0,0,0
smallSpacing: 2
largeSpacing: 10

Platform
==========
Name: KWin::X11StandalonePlatform

Options
=======
focusPolicy: 0
nextFocusPrefersMouse: false
clickRaise: true
autoRaise: false
autoRaiseInterval: 0
delayFocusInterval: 0
shadeHover: false
shadeHoverInterval: 250
separateScreenFocus: true
placement: 4
focusPolicyIsReasonable: true
borderSnapZone: 0
windowSnapZone: 0
centerSnapZone: 0
snapOnlyWhenOverlapping: false
rollOverDesktops: true
focusStealingPreventionLevel: 1
operationTitlebarDblClick: 5000
operationMaxButtonLeftClick: 5000
operationMaxButtonMiddleClick: 5015
operationMaxButtonRightClick: 5014
commandActiveTitlebar1: 0
commandActiveTitlebar2: 28
commandActiveTitlebar3: 2
commandInactiveTitlebar1: 4
commandInactiveTitlebar2: 28
commandInactiveTitlebar3: 2
commandWindow1: 7
commandWindow2: 8
commandWindow3: 8
commandWindowWheel: 28
commandAll1: 10
commandAll2: 3
commandAll3: 14
keyCmdAllModKey: 16777250
showGeometryTip: false
condensedTitle: false
electricBorderMaximize: true
electricBorderTiling: true
electricBorderCornerRatio: 0.25
borderlessMaximizedWindows: false
killPingTimeout: 5000
hideUtilityWindowsForInactive: true
compositingMode: 1
useCompositing: true
hiddenPreviews: 1
glSmoothScale: 0
xrenderSmoothScale: false
maxFpsInterval: 6944444
refreshRate: 144
vBlankTime: 6000000
glStrictBinding: true
glStrictBindingFollowsDriver: true
glCoreProfile: true
glPreferBufferSwap: 101
glPlatformInterface: 1
windowsBlockCompositing: false

Screen Edges
============
desktopSwitching: false
desktopSwitchingMovingClients: false
cursorPushBackDistance: 1x1
timeThreshold: 150
reActivateThreshold: 350
actionTopLeft: 0
actionTop: 0
actionTopRight: 0
actionRight: 0
actionBottomRight: 0
actionBottom: 0
actionBottomLeft: 0
actionLeft: 0

Screens
=======
Multi-Head: no
Active screen follows mouse:  yes
Number of Screens: 2

Screen 0:
---------
Name: DisplayPort-1
Geometry: 0,0,2560x1440
Scale: 1
Refresh Rate: 143.855

Screen 1:
---------
Name: DVI-D-0
Geometry: 2560,0,1920x1080
Scale: 1
Refresh Rate: 60


Compositing
===========
Compositing is active
Compositing Type: OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: Radeon RX 580 Series (POLARIS10, DRM 3.36.0, 5.5.3-arch1-1, LLVM 9.0.1)
OpenGL version string: 4.5 (Compatibility Profile) Mesa 19.3.3
OpenGL platform interface: GLX
OpenGL shading language version string: 4.50
Driver: RadeonSI
GPU class: Arctic Islands
OpenGL version: 4.5
GLSL version: 4.50
Mesa version: 19.3.3
X server version: 1.20.7
Linux kernel version: 5.5.3
Direct rendering: Requires strict binding: yes
GLSL shaders:  yes
Texture NPOT support:  yes
Virtual Machine:  no
OpenGL 2 Shaders are used
Painting blocks for vertical retrace:  no

Loaded Effects:
---------------
kwin4_effect_maximize
zoom
kwin4_effect_fadedesktop
kwin4_effect_frozenapp
kwin4_effect_morphingpopups
kwin4_effect_fadingpopups
kwin4_effect_fade
kwin4_effect_sessionquit
kwin4_effect_translucency
kwin4_effect_logout
kwin4_effect_dimscreen
kwin4_effect_eyeonscreen
kwin4_effect_dialogparent
kwin4_effect_login
slidingpopups
screenshot
magiclamp
flipswitch
desktopgrid
coverswitch
colorpicker
presentwindows
highlightwindow
blur
contrast
startupfeedback
screenedge
kscreen

Currently Active Effects:
-------------------------
blur
contrast

Effect Settings:
----------------
kwin4_effect_maximize:
isActiveFullScreenEffect: false

zoom:
zoomFactor: 1.2
mousePointer: 0
mouseTracking: 0
enableFocusTracking: false
followFocus: true
focusDelay: 350
moveFactor: 20
targetZoom: 1

kwin4_effect_fadedesktop:
isActiveFullScreenEffect: false

kwin4_effect_frozenapp:
isActiveFullScreenEffect: false

kwin4_effect_morphingpopups:
isActiveFullScreenEffect: false

kwin4_effect_fadingpopups:
isActiveFullScreenEffect: false

kwin4_effect_fade:
isActiveFullScreenEffect: false

kwin4_effect_sessionquit:
isActiveFullScreenEffect: false

kwin4_effect_translucency:
isActiveFullScreenEffect: false

kwin4_effect_logout:
isActiveFullScreenEffect: false

kwin4_effect_dimscreen:
isActiveFullScreenEffect: false

kwin4_effect_eyeonscreen:
isActiveFullScreenEffect: false

kwin4_effect_dialogparent:
isActiveFullScreenEffect: false

kwin4_effect_login:
isActiveFullScreenEffect: false

slidingpopups:
slideInDuration: 150
slideOutDuration: 250

screenshot:

magiclamp:

flipswitch:
tabBox: false
tabBoxAlternative: false
duration: 200
angle: 30
xPosition: 0.33000001311302185
yPosition: 1
windowTitle: true

desktopgrid:
zoomDuration: 300
border: 10
desktopNameAlignment: 0
layoutMode: 0
customLayoutRows: 2
usePresentWindows: true

coverswitch:
animationDuration: 200
animateSwitch: true
animateStart: true
animateStop: true
reflection: true
windowTitle: true
zPosition: 900
primaryTabBox: false
secondaryTabBox: false

colorpicker:

presentwindows:
layoutMode: 2
showCaptions: true
showIcons: true
doNotCloseWindows: false
ignoreMinimized: false
accuracy: 20
fillGaps: true
fadeDuration: 150
showPanel: false
leftButtonWindow: 1
rightButtonWindow: 2
middleButtonWindow: 0
leftButtonDesktop: 2
middleButtonDesktop: 0
rightButtonDesktop: 0

highlightwindow:

blur:

contrast:

startupfeedback:
type: 1

screenedge:

kscreen:
Comment 1 Tim 2021-06-01 07:15:01 UTC
(In reply to Rokas Kupstys from comment #0)
> I have two monitors: 1440p 144hz with freesync and 1080p 60hz. 144hz monitor
> resets it's refresh rate to 60hz quite often, but this is not 100%
> reproducible. I use monitor input switching a lot (/dev/i2c-*, ddcutil).
> This makes me think that merely switching monitor input source is enough to
> trigger this issue, as switching back to input driven by linux would
> sometimes initialize it at 60hz and not 144hz.
> 
> Important detail: Default supported freesync range is 35-90hz on this
> screen. I use modded edid firmware to change this range to 57-144hz. This
> works perfectly fine.
> 
> It would be great if monitor could keep refresh rate configured in display
> settings instead of sometimes switching to lower one for some reason.
> 
> SOFTWARE/OS VERSIONS
> Linux/KDE Plasma: Archlinux
> KDE Plasma Version: 5.18.0
> KDE Frameworks Version: 5.67.0
> Qt Version: 5.14.1
> Kernel: 5.5.3
> Driver: amdgpu
> GPU: RX580
> Screen: Asus MG279 with freesync enabled
> 
> ~ % cat /etc/X11/xorg.conf.d/20-amdgpu.conf 
> Section "Device"
>      Identifier "AMD"
>      Driver "amdgpu"
>      Option "TearFree" "true"
>      Option "VariableRefresh" "true"
> EndSection
> 
> xrandr output:
> Screen 0: minimum 320 x 200, current 4480 x 1440, maximum 16384 x 16384
> DisplayPort-0 disconnected (normal left inverted right x axis y axis)
> DisplayPort-1 connected primary 2560x1440+0+0 (normal left inverted right x
> axis y axis) 597mm x 336mm
>    2560x1440     59.95 + 143.86*  119.88    89.91  
>    1920x1200     59.95  
>    1920x1080    143.85    99.92   119.98    89.90    60.00    60.00    50.00
> 59.94  
>    1600x1200     59.95  
>    1680x1050     59.95  
>    1600x900      89.91    60.00  
>    1280x1024     75.02  
>    1440x900      59.95  
>    1280x800      59.95  
>    1152x864      75.00  
>    1280x720      89.96    60.00    50.00    59.94  
>    1440x576      50.00  
>    1024x768      75.03    70.07    60.00  
>    1440x480      60.00    59.94  
>    832x624       74.55  
>    800x600       72.19    75.00    60.32    56.25  
>    720x576       50.00  
>    640x480       75.00    66.67    60.00    59.94  
>    720x400       70.08  
> HDMI-A-0 disconnected (normal left inverted right x axis y axis)
> HDMI-A-1 disconnected (normal left inverted right x axis y axis)
> DVI-D-0 connected 1920x1080+2560+0 (normal left inverted right x axis y
> axis) 510mm x 290mm
>    1920x1080     60.00*+
>    1680x1050     59.88  
>    1280x1024     75.02    60.02  
>    1440x900      60.00  
>    1280x960      60.00  
>    1280x800      60.00  
>    1152x864      75.00  
>    1280x720      60.00  
>    1024x768      75.03    60.00  
>    832x624       74.55  
>    800x600       75.00    60.32    56.25  
>    640x480       75.00    59.94  
>    720x400       70.08
> 
> ~ % qdbus org.kde.KWin /KWin supportInformation
> KWin Support Information:
> The following information should be used when requesting support on e.g.
> https://forum.kde.org.
> It provides information about the currently running instance, which options
> are used,
> what OpenGL driver and which effects are running.
> Please post the information provided underneath this introductory text to a
> paste bin service
> like https://paste.kde.org instead of pasting into support threads.
> 
> ==========================
> 
> Version
> =======
> KWin version: 5.18.0
> Qt Version: 5.14.1
> Qt compile version: 5.14.1
> XCB compile version: 1.13.1
> 
> Operation Mode: X11 only
> 
> Build Options
> =============
> KWIN_BUILD_DECORATIONS: yes
> KWIN_BUILD_TABBOX: yes
> KWIN_BUILD_ACTIVITIES: yes
> HAVE_DRM: yes
> HAVE_GBM: yes
> HAVE_EGL_STREAMS: yes
> HAVE_X11_XCB: yes
> HAVE_EPOXY_GLX: yes
> HAVE_WAYLAND_EGL: yes
> 
> X11
> ===
> Vendor: The X.Org Foundation
> Vendor Release: 12007000
> Protocol Version/Revision: 11/0
> SHAPE: yes; Version: 0x11
> RANDR: yes; Version: 0x14
> DAMAGE: yes; Version: 0x11
> Composite: yes; Version: 0x4
> RENDER: yes; Version: 0xb
> XFIXES: yes; Version: 0x50
> SYNC: yes; Version: 0x31
> GLX: yes; Version: 0x0
> 
> Decoration
> ==========
> Plugin: org.kde.breeze
> Theme: 
> Plugin recommends border size: None
> Blur: 0
> onAllDesktopsAvailable: false
> alphaChannelSupported: true
> closeOnDoubleClickOnMenu: false
> decorationButtonsLeft: 5, 4, 3, 6, 0
> decorationButtonsRight: 
> borderSize: 0
> gridUnit: 10
> font: Noto Sans,10,-1,5,50,0,0,0,0,0
> smallSpacing: 2
> largeSpacing: 10
> 
> Platform
> ==========
> Name: KWin::X11StandalonePlatform
> 
> Options
> =======
> focusPolicy: 0
> nextFocusPrefersMouse: false
> clickRaise: true
> autoRaise: false
> autoRaiseInterval: 0
> delayFocusInterval: 0
> shadeHover: false
> shadeHoverInterval: 250
> separateScreenFocus: true
> placement: 4
> focusPolicyIsReasonable: true
> borderSnapZone: 0
> windowSnapZone: 0
> centerSnapZone: 0
> snapOnlyWhenOverlapping: false
> rollOverDesktops: true
> focusStealingPreventionLevel: 1
> operationTitlebarDblClick: 5000
> operationMaxButtonLeftClick: 5000
> operationMaxButtonMiddleClick: 5015
> operationMaxButtonRightClick: 5014
> commandActiveTitlebar1: 0
> commandActiveTitlebar2: 28
> commandActiveTitlebar3: 2
> commandInactiveTitlebar1: 4
> commandInactiveTitlebar2: 28
> commandInactiveTitlebar3: 2
> commandWindow1: 7
> commandWindow2: 8
> commandWindow3: 8
> commandWindowWheel: 28
> commandAll1: 10
> commandAll2: 3
> commandAll3: 14
> keyCmdAllModKey: 16777250
> showGeometryTip: false
> condensedTitle: false
> electricBorderMaximize: true
> electricBorderTiling: true
> electricBorderCornerRatio: 0.25
> borderlessMaximizedWindows: false
> killPingTimeout: 5000
> hideUtilityWindowsForInactive: true
> compositingMode: 1
> useCompositing: true
> hiddenPreviews: 1
> glSmoothScale: 0
> xrenderSmoothScale: false
> maxFpsInterval: 6944444
> refreshRate: 144
> vBlankTime: 6000000
> glStrictBinding: true
> glStrictBindingFollowsDriver: true
> glCoreProfile: true
> glPreferBufferSwap: 101
> glPlatformInterface: 1
> windowsBlockCompositing: false
> 
> Screen Edges
> ============
> desktopSwitching: false
> desktopSwitchingMovingClients: false
> cursorPushBackDistance: 1x1
> timeThreshold: 150
> reActivateThreshold: 350
> actionTopLeft: 0
> actionTop: 0
> actionTopRight: 0
> actionRight: 0
> actionBottomRight: 0
> actionBottom: 0
> actionBottomLeft: 0
> actionLeft: 0
> 
> Screens
> =======
> Multi-Head: no
> Active screen follows mouse:  yes
> Number of Screens: 2
> 
> Screen 0:
> ---------
> Name: DisplayPort-1
> Geometry: 0,0,2560x1440
> Scale: 1
> Refresh Rate: 143.855
> 
> Screen 1:
> ---------
> Name: DVI-D-0
> Geometry: 2560,0,1920x1080
> Scale: 1
> Refresh Rate: 60
> 
> 
> Compositing
> ===========
> Compositing is active
> Compositing Type: OpenGL
> OpenGL vendor string: X.Org
> OpenGL renderer string: Radeon RX 580 Series (POLARIS10, DRM 3.36.0,
> 5.5.3-arch1-1, LLVM 9.0.1)
> OpenGL version string: 4.5 (Compatibility Profile) Mesa 19.3.3
> OpenGL platform interface: GLX
> OpenGL shading language version string: 4.50
> Driver: RadeonSI
> GPU class: Arctic Islands
> OpenGL version: 4.5
> GLSL version: 4.50
> Mesa version: 19.3.3
> X server version: 1.20.7
> Linux kernel version: 5.5.3
> Direct rendering: Requires strict binding: yes
> GLSL shaders:  yes
> Texture NPOT support:  yes
> Virtual Machine:  no
> OpenGL 2 Shaders are used
> Painting blocks for vertical retrace:  no
> 
> Loaded Effects:
> ---------------
> kwin4_effect_maximize
> zoom
> kwin4_effect_fadedesktop
> kwin4_effect_frozenapp
> kwin4_effect_morphingpopups
> kwin4_effect_fadingpopups
> kwin4_effect_fade
> kwin4_effect_sessionquit
> kwin4_effect_translucency
> kwin4_effect_logout
> kwin4_effect_dimscreen
> kwin4_effect_eyeonscreen
> kwin4_effect_dialogparent
> kwin4_effect_login
> slidingpopups
> screenshot
> magiclamp
> flipswitch
> desktopgrid
> coverswitch
> colorpicker
> presentwindows
> highlightwindow
> blur
> contrast
> startupfeedback
> screenedge
> kscreen
> 
> Currently Active Effects:
> -------------------------
> blur
> contrast
> 
> Effect Settings:
> ----------------
> kwin4_effect_maximize:
> isActiveFullScreenEffect: false
> 
> zoom:
> zoomFactor: 1.2
> mousePointer: 0
> mouseTracking: 0
> enableFocusTracking: false
> followFocus: true
> focusDelay: 350
> moveFactor: 20
> targetZoom: 1
> 
> kwin4_effect_fadedesktop:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_frozenapp:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_morphingpopups:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_fadingpopups:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_fade:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_sessionquit:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_translucency:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_logout:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_dimscreen:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_eyeonscreen:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_dialogparent:
> isActiveFullScreenEffect: false
> 
> kwin4_effect_login:
> isActiveFullScreenEffect: false
> 
> slidingpopups:
> slideInDuration: 150
> slideOutDuration: 250
> 
> screenshot:
> 
> magiclamp:
> 
> flipswitch:
> tabBox: false
> tabBoxAlternative: false
> duration: 200
> angle: 30
> xPosition: 0.33000001311302185
> yPosition: 1
> windowTitle: true
> 
> desktopgrid:
> zoomDuration: 300
> border: 10
> desktopNameAlignment: 0
> layoutMode: 0
> customLayoutRows: 2
> usePresentWindows: true
> 
> coverswitch:
> animationDuration: 200
> animateSwitch: true
> animateStart: true
> animateStop: true
> reflection: true
> windowTitle: true
> zPosition: 900
> primaryTabBox: false
> secondaryTabBox: false
> 
> colorpicker:
> 
> presentwindows:
> layoutMode: 2
> showCaptions: true
> showIcons: true
> doNotCloseWindows: false
> ignoreMinimized: false
> accuracy: 20
> fillGaps: true
> fadeDuration: 150
> showPanel: false
> leftButtonWindow: 1
> rightButtonWindow: 2
> middleButtonWindow: 0
> leftButtonDesktop: 2
> middleButtonDesktop: 0
> rightButtonDesktop: 0
> 
> highlightwindow:
> 
> blur:
> 
> contrast:
> 
> startupfeedback:
> type: 1
> 
> screenedge:
> 
> kscreen:

Rokas, If you change monitor layout with Meta+P shortcut does your ext 144hz monitor also switch back to 60hz?

I think I have the same problem here on an Nvidia graphics card with an external 144hz gsync display, and its clear that Kwin is overriding anything set in my Xorg.conf.

The expected behavior would be for Kwin to remember the last refresh rate of a display, rather than each time revert to the default refresh rate. In your Xorg, you can see the default refresh rate is marked with a +, whilst current is *.

Currently any change by Kwin resorts to default, rather than last used.

Alternatively, it would be great to get Kwin to set the refresh rate to the preferred mode as set in Xorg.conf.

If anyone has the knowledge, a dirty fix for this problem would being able to configure the default refresh rate reported by the monitor, since you could set that to your desired refresh rate to replace the incorrect default.

For the record I created a thread on the support forum and reddit with the issue:
https://forum.kde.org/viewtopic.php?f=66&t=171318
https://www.reddit.com/r/kde/comments/n9zvo1/meta_p_shortcut_defaulting_my_ext_monitor_to_60hz/

Setting the refresh rate using Xrandr manually works fine.
Viewing Xrandr logs each time Meta+P is used, instead of reading the prefered mode set in Xorg.conf, Kwin forces default refresh rate mode. In Xrandr log this shows as 'Auto Mode' rather than the desired 'preferred mode'.

Hopefully someone with some knowhow sees this bug. Thanks for reporting it.
Comment 2 Nate Graham 2022-11-08 22:18:04 UTC
Thank you for the bug report. Unfortunately we were not able to get to it yet. Can we ask you to please check if this is still an issue with Plasma 5.25 or 5.26?

If it is, please add a comment with the output of `kscreen-doctor -o` and change the status to CONFIRMED. If not, or if you can't because you no longer use this setup, you can change the status to RESOLVED WORKSFORME. Thanks a lot!
Comment 3 Rokas Kupstys 2022-11-09 07:17:24 UTC
Thank you for getting back to me!

This is still a proble
Plasma: 5.26.2
KDE Frameworks: 5.99.0
Qt: 5.15.7
Platform: x11

After reboot i can set refresh rate to 144hz:
~ % kscreen-doctor -o
Output: 84 DisplayPort-0 disabled disconnected  DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 
Output: 85 DisplayPort-1 enabled connected primary DisplayPort Modes: 90:2560x1440@144*! 91:2560x1440@120 92:2560x1440@60 93:1920x1200@144 94:1920x1080@60 95:1920x1080@60 96:1920x1080@50 97:1920x1080@60 98:1600x1200@144 99:1680x1050@144 100:1280x1024@75 101:1280x1024@60 102:1440x900@60 103:1280x800@144 104:1152x864@75 105:1280x720@60 106:1280x720@50 107:1280x720@60 108:1440x576@50 109:1024x768@75 110:1024x768@70 111:1024x768@60 112:1440x480@60 113:1440x480@60 114:832x624@75 115:800x600@72 116:800x600@75 117:800x600@60 118:800x600@56 119:720x576@50 120:640x480@75 121:640x480@67 122:640x480@60 123:640x480@60 124:720x400@70 Geometry: 0,0 2560x1440 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown primary
Output: 86 HDMI-A-0 disabled disconnected  HDMI Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 
Output: 87 HDMI-A-1 disabled disconnected  HDMI Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 
Output: 88 DVI-D-0 enabled connected  DVI Modes: 95:1920x1080@60*! 100:1280x1024@75 101:1280x1024@60 104:1152x864@75 109:1024x768@75 111:1024x768@60 114:832x624@75 116:800x600@75 117:800x600@60 118:800x600@56 120:640x480@75 123:640x480@60 124:720x400@70 125:1680x1050@60 126:1440x900@60 127:1280x960@60 128:1280x800@60 129:1280x720@60 Geometry: 2560,0 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 

Sometimes it gets permanently stuck at 60hz, display configuration does not allow changing refresh rate. I could reproduce this once by disconnecting DP cable from graphics card and plugging it back in. Doing it again somehow does not produce this issue for now. At this time FreeSync is disabled edid is not used.
~ % kscreen-doctor -o
Output: 84 DisplayPort-0 disabled disconnected  DisplayPort Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 
Output: 85 DisplayPort-1 enabled connected primary DisplayPort Modes: 92:2560x1440@60*! 94:1920x1080@60 95:1920x1080@60 96:1920x1080@50 97:1920x1080@60 100:1280x1024@75 101:1280x1024@60 102:1440x900@60 104:1152x864@75 105:1280x720@60 106:1280x720@50 107:1280x720@60 108:1440x576@50 109:1024x768@75 110:1024x768@70 111:1024x768@60 112:1440x480@60 113:1440x480@60 114:832x624@75 115:800x600@72 116:800x600@75 117:800x600@60 118:800x600@56 119:720x576@50 120:640x480@75 121:640x480@67 122:640x480@60 123:640x480@60 124:720x400@70 Geometry: 0,0 2560x1440 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown primary
Output: 86 HDMI-A-0 disabled disconnected  HDMI Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 
Output: 87 HDMI-A-1 disabled disconnected  HDMI Modes: Geometry: 0,0 0x0 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown 
Output: 88 DVI-D-0 enabled connected  DVI Modes: 95:1920x1080@60*! 100:1280x1024@75 101:1280x1024@60 104:1152x864@75 109:1024x768@75 111:1024x768@60 114:832x624@75 116:800x600@75 117:800x600@60 118:800x600@56 120:640x480@75 123:640x480@60 124:720x400@70 125:1680x1050@60 126:1440x900@60 127:1280x960@60 128:1280x800@60 129:1280x720@60 Geometry: 2560,0 1920x1080 Scale: 1 Rotation: 1 Overscan: 0 Vrr: incapable RgbRange: unknown
Comment 4 Nate Graham 2022-11-09 21:03:42 UTC
Thanks, that's helpful.

According to that output, when the bug occurs, KScreen doesn't even know that the screens even have a 144hz refresh rate anymore. The data source it uses has started lying to it, and because you're on X11, those sources are thegraphics driver bugs and the kernel. I'd recommend filing a bug for starters at https://gitlab.freedesktop.org/drm/amd/-/issues/. Good luck!