Windows maximizing to a 3/4 of the main screen at random

Hello again.
It seems that I bring a new problem every week :sweat_smile:

This one has been troubling me from the beginning but, since it had a workaround I didn't bring it earlier:

I have a two monitor setup:
Main (right) 1440p 165 Hz running at 165 Hz.
Secondary (left) 1080p 144 Hz running at 60 Hz (I don't play on this one).

The problem is that, at random times, sometimes after exiting a full screen app, sometimes after the logon screen... The windows on the right screen will maximize to cover the lower 3/4 of the screen. The width remains normal, mouse movement and wallpaper are unaffected and so are full screen applications. Trying to move a window to the empty area causes it to maximize.

As workaround, changing the settings (orientation/refresh/resolution) of any of the displays, fixes the problem until the next time.

It may or not be related, but automatic screen shutdown for energy saving doesn't work either and instead sends all my windows to the left screen, remaining both on.

Thank you in advance, and sorry for the trouble.

System:
Kernel: 5.18.11-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.1.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=810cddd0-3d54-45f7-88fa-84f8b12b1038 rw rootflags=subvol=@
rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
Desktop: KDE Plasma v: 5.25.3 tk: Qt v: 5.15.5 info: latte-dock
wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Desktop Mobo: ASUSTeK model: ROG STRIX B450-I GAMING v: Rev 1.xx
serial: <superuser required> UEFI: American Megatrends v: 4602
date: 08/17/2021
CPU:
Info: model: AMD Ryzen 7 3700X bits: 64 type: MT MCP arch: Zen 2 gen: 3
built: 2020-22 process: TSMC n7 (7nm) family: 0x17 (23)
model-id: 0x71 (113) stepping: 0 microcode: 0x8701021
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB desc: 8x512 KiB
L3: 32 MiB desc: 2x16 MiB
Speed (MHz): avg: 4098 high: 4100 min/max: 2200/3600 boost: enabled
scaling: driver: acpi-cpufreq governor: performance cores: 1: 4098 2: 4100
3: 4099 4: 4100 5: 4099 6: 4097 7: 4099 8: 4098 9: 4100 10: 4100 11: 4098
12: 4099 13: 4099 14: 4098 15: 4097 16: 4100 bogomips: 115201
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities:
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: mmio_stale_data status: Not affected
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Retpolines, IBPB: conditional, STIBP: conditional, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: AMD Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT]
vendor: Gigabyte driver: amdgpu v: kernel arch: RDNA 1
process: TSMC n7 (7nm) built: 2019-20 pcie: gen: 4 speed: 16 GT/s
lanes: 16 ports: active: DP-1,DP-3 empty: DP-2,HDMI-A-1 bus-ID: 09:00.0
chip-ID: 1002:731f class-ID: 0300
Device-2: Logitech Webcam C270 type: USB driver: snd-usb-audio,uvcvideo
bus-ID: 1-1:2 chip-ID: 046d:0825 class-ID: 0102 serial: <filter>
Display: x11 server: X.Org v: 21.1.4 with: Xwayland v: 22.1.3
compositor: kwin_x11 driver: X: loaded: amdgpu unloaded: modesetting,radeon
alternate: fbdev,vesa gpu: amdgpu display-ID: :0 screens: 1
Screen-1: 0 s-res: 4480x1440 s-dpi: 96 s-size: 1185x381mm (46.65x15.00")
s-diag: 1245mm (49.01")
Monitor-1: DP-1 mapped: DisplayPort-0 pos: primary,top-right
model: MSI MAG274QRF-QD serial: <filter> built: 2021 res: 2560x1440
dpi: 109 gamma: 1.2 size: 597x336mm (23.5x13.23") diag: 685mm (27")
ratio: 16:9 modes: max: 2560x1440 min: 640x480
Monitor-2: DP-3 mapped: DisplayPort-2 pos: bottom-l model: AOC 2590G4
serial: <filter> built: 2019 res: 1920x1080 dpi: 90 gamma: 1.2
size: 544x303mm (21.42x11.93") diag: 623mm (24.5") ratio: 16:9 modes:
max: 1920x1080 min: 720x400
OpenGL: renderer: AMD Radeon RX 5700 (navi10 LLVM 14.0.6 DRM 3.46
5.18.11-zen1-1-zen)
v: 4.6 Mesa 22.1.3 direct render: Yes
Audio:
Device-1: AMD Navi 10 HDMI Audio driver: snd_hda_intel v: kernel
bus-ID: 1-1:2 pcie: chip-ID: 046d:0825 gen: 4 class-ID: 0102 speed: 16 GT/s
lanes: 16 serial: <filter> bus-ID: 09:00.1 chip-ID: 1002:ab38
class-ID: 0403
Device-2: AMD Starship/Matisse HD Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0b:00.4 chip-ID: 1022:1487 class-ID: 0403
Device-3: Logitech Webcam C270 type: USB driver: snd-usb-audio,uvcvideo
Device-4: Logitech G432 Gaming Headset type: USB
driver: hid-generic,snd-usb-audio,usbhid bus-ID: 1-2:3 chip-ID: 046d:0a9c
class-ID: 0300 serial: <filter>
Sound Server-1: ALSA v: k5.18.11-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 16.1 running: no
Sound Server-3: PipeWire v: 0.3.55 running: yes
Network:
Device-1: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel
pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: d000 bus-ID: 04:00.0
chip-ID: 8086:1539 class-ID: 0200
IF: enp4s0 state: down mac: <filter>
Device-2: Realtek RTL8822BE 802.11a/b/g/n/ac WiFi adapter vendor: ASUSTeK
driver: rtw_8822be v: N/A modules: rtw88_8822be pcie: gen: 1
speed: 2.5 GT/s lanes: 1 port: c000 bus-ID: 05:00.0 chip-ID: 10ec:b822
class-ID: 0280
IF: wlp5s0 state: up mac: <filter>
Bluetooth:
Device-1: ASUSTek Bluetooth Radio type: USB driver: btusb v: 0.8
bus-ID: 1-8:5 chip-ID: 0b05:185c class-ID: e001 serial: <filter>
Report: bt-adapter ID: hci0 rfk-id: 1 state: up address: <filter>
Drives:
Local Storage: total: 1.84 TiB used: 1.13 TiB (61.5%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: A-Data model: SX8200PNP
size: 953.87 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: S0118C
temp: 32.9 C scheme: GPT
ID-2: /dev/sda maj-min: 8:0 vendor: Western Digital
model: WD10SPZX-00Z10T0 size: 931.51 GiB block-size: physical: 4096 B
logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 5400 serial: <filter>
rev: 1A01 scheme: MBR
Partition:
ID-1: / raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 336.77 GiB (35.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 608 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 336.77 GiB (35.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 336.77 GiB (35.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 953.57 GiB size: 953.57 GiB (100.00%)
used: 336.77 GiB (35.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.54 GiB used: 2.8 MiB (0.0%)
priority: 100 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 41.0 C mobo: 51.0 C gpu: amdgpu temp: 44.0 C
mem: 52.0 C
Fan Speeds (RPM): cpu: 670 case-1: 697 gpu: amdgpu fan: 709
Power: 12v: 9.92 5v: N/A 3.3v: N/A vbat: 3.21 gpu: amdgpu watts: 31.00
Info:
Processes: 377 Uptime: 1h 29m wakeups: 0 Memory: 15.54 GiB
used: 4.77 GiB (30.7%) Init: systemd v: 251 default: graphical
tool: systemctl Compilers: gcc: 12.1.0 clang: 14.0.6 Packages: pacman: 1862
lib: 552 flatpak: 0 Shell: fish v: 3.4.1 default: Bash v: 5.1.16
running-in: konsole inxi: 3.3.19
Garuda (2.6.5-1):
System install date:     2022-06-25
Last full system update: 2022-07-16
Is partially upgraded:   No
Relevant software:       NetworkManager
Windows dual boot:       No/Undetected
Snapshots:               Snapper
Failed units:

Check if your monitors are not overlapping, even one pixel could create similar issues.

xrandr | grep -w "connected"
2 Likes

Thanks for your answer.

This is the output I received:

DisplayPort-0 connected primary 2560x1440+1920+0 (normal left inverted right x axis y axis) 597mm x 336mm
DisplayPort-2 connected 1920x1080+0+261 (normal left inverted right x axis y axis) 544mm x 303mm

Don't know how to interpretate it. But I'll put some distance in between in the config window.

It looks OK. It might be a kwin bug.
Maybe try aligning both at the top, just for testing if you get different behavior.

I mean, change this to 1920x1080+0+0.

Other than that, you may want to look at upstream kde bugs for similar issues, or create a new bug report.

3 Likes

Thank you.

I tried both ideas. So far I haven't had the maximization problem, although, given the randomness of it, I can't say if it is solved or not.

The energy saving monitor shutdown still doesn't work, so who knows.

I am certain this is an old bug, but I am not sure for which DE (KDE or xfce4), for which, top-aligning both/all monitors was a successful workaround (but not a solution in the code). Maybe you can find such a bug report at KDE bugs and give your feedback. They may not know about its returning :person_shrugging: .

This is not sure whether it is connected to the 1st one. It sounds like one monitor is shutting down initially, but forced to wake up, possibly because the other one fails to sleep. Sending all windows to the other monitor is such a sign. KDE multiscreen bugs to eternity!! :joy:
Again, upstream is your best place to provide feedback and get advice.
Remember, it’s a system (HW probably) specific issue, since it is not reported from every multi-monitor Arch user.

2 Likes

Sorry for the late reply. I have been trying to solve the problem and doing some research on my own.

I finally isolated the guilty, KScreen 2: once disabled, both the energy saving and he maximized windows problems disappeared (the last one happened so randomly that I cannot say for sure it is fixed until a couple of weeks have past, but so far so good).
However that was not the end of my problems: with KScreen 2 disabled, the monitor configuration (position, orientation and refresh rate) was lost or reset with every system restart or shutdown. Forcing me to set then manually with every time the computer starts.

After a couple more headaches (I am a noob on linux after all) I managed to set a small script on Start up to make xrandr do that for me.

I'll leave a copy as example for anyone suffering this problem.

As a reminder, this is the configuration of MY monitors, so don't just copy-paste the scrip, adapt it to your hardware. I do not take any responsibility over any damage or loss of info derived of its use:

xrandr --output DisplayPort-0 --primary --mode 2560x1440 --rate 165 --pos 1920x0 --rotate normal --output DisplayPort-1 --off --output DisplayPort-2 --mode 1920x1080 --rate 144 --pos 0x273 --rotate normal --output HDMI-A-0 --off

Best Regards.

4 Likes

Well done! This is the Arch way, actually. :slightly_smiling_face:

Maybe your next step in Linux could be to learn/experience reporting bugs upstream (KDE) :wink:

3 Likes

I’ve actually tried to so but the energy saving Bug has been already posted, and the maximization one happened at random, so I can’t provide instructions on how to reproduce it (not to mention I don’t have the slightest idea on how to get my KScreen 2 version number).

Anyway, Thanks for your assistance, much appreciated. :slightly_smiling_face:

1 Like

This is enough, since it’s true. Someone may have an idea and ask for specific extra info.

Try

pacman -Qs kscreen
2 Likes

It is done.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.